Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CICS program JMS response exception #28

Open
tester5 opened this issue Jun 13, 2019 · 0 comments
Open

CICS program JMS response exception #28

tester5 opened this issue Jun 13, 2019 · 0 comments

Comments

@tester5
Copy link

tester5 commented Jun 13, 2019

Trying to get a CICS program working and getting the following exception from a CICS based JMS response:

Legstar web service response:
<?xml version='1.0' encoding='UTF-8'?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope"> <faultcode>S:Server</faultcode> <faultstring>For input string: "IBM500"</faultstring> </S:Fault> </S:Body> </S:Envelope>

Matching stacktrace is this:
07-Jun-2019 13:18:56.629 SEVERE [http-nio-8080-exec-3] com.sun.xml.ws.server.sei.TieHandler.createResponse For input string: "IBM500" java.lang.NumberFormatException: For input string: "IBM500" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615) at com.ibm.msg.client.jms.internal.JmsReadablePropertyContextImpl.parseInt(JmsReadablePropertyContextImpl.java:608) at com.ibm.msg.client.jms.internal.JmsMessageImpl.getIntProperty(JmsMessageImpl.java:1508) at com.ibm.jms.JMSMessage.getIntProperty(JMSMessage.java:637) at com.legstar.mq.client.CicsMQMqcih.createReplyMessage(CicsMQMqcih.java:199) at com.legstar.mq.client.AbstractCicsMQ.recvResponse(AbstractCicsMQ.java:431) at com.legstar.host.access.DirectHostAccessStrategy.invoke(DirectHostAccessStrategy.java:62) at com.legstar.host.invoke.AbstractInvoker.invoke(AbstractInvoker.java:85) at com.legstar.host.invoke.CommareaInvoker.invoke(CommareaInvoker.java:77) at (servername).cixs.(systemname).RetrieveContractProgramInvoker.retrieveContract(RetrieveContractProgramInvoker.java:71) at (servername).cixs.(systemname).(systemname).Impl.retrieveContract(systemname).Impl.java:42) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.xml.ws.util.Trampoline.invoke(MethodUtil.java:82) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.xml.ws.util.MethodUtil.invoke(MethodUtil.java:107) at com.sun.xml.ws.api.server.MethodUtil.invoke(MethodUtil.java:64) at com.sun.xml.ws.api.server.InstanceResolver$1.invoke(InstanceResolver.java:250) at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:149) at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:88) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877) at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:419) at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:868) at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:422) at com.sun.xml.ws.transport.http.servlet.ServletAdapter.invokeAsync(ServletAdapter.java:225) at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:161) at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:197) at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:81) at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:836) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1839) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748)

Above occurs when setting the hostCharset to a valid charset, i.e. "IBM500" or "UTF-8"
http://www.legsem.com/legstar/legstar-transport/legstar-messaging/apidocs/com/legstar/messaging/HostEndpoint.html#setHostCharset(java.lang.String)

When setting charset to an invalid charset (e.g. "UTF-88") we receive this exception:
<?xml version='1.0' encoding='UTF-8'?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope"> <faultcode>S:Server</faultcode> <faultstring>Failed to transform data: ConversionException for element:MiHdrVersion Cobol name:MI-HDR-VERSION Reason:UnsupportedEncodingException:UTF-88</faultstring> <detail> <ns2:RetrieveContractFaultInfo xmlns:ns2="http://(servername)/(systemname)." xmlns="http://(servername)/(systemname)./retrieveContract/v5"> <ns2:detail>Operation=retrieveContract, Program properties={"CICSProgramName":"PYDXTP1C","CICSLength":27728,"CICSDataLength":27728}, Config file name=legstar-invoker-config.xml, HostInvoker=[Address=[hostEndpoint=TheMainframe,hostCharset=UTF-8,hostUserID=MYUSER,hostTraceMode=false],HostAccessStrategy=com.legstar.host.access.DirectHostAccessStrategy,{"CICSProgramName":"PYDXTP1C","CICSLength":27728,"CICSDataLength":27728}], HostInvoker=[Address=[hostEndpoint=TheMainframe,hostCharset=UTF-88,hostUserID=MYUSER,hostTraceMode=false],HostAccessStrategy=com.legstar.host.access.DirectHostAccessStrategy,{"CICSProgramName":"PYDXTP1C","CICSLength":27728,"CICSDataLength":27728}]</ns2:detail> <ns2:message>ConversionException for element:MiHdrVersion Cobol name:MI-HDR-VERSION Reason:UnsupportedEncodingException:UTF-88</ns2:message> </ns2:RetrieveContractFaultInfo> </detail> </S:Fault> </S:Body> </S:Envelope>

Any thoughts on how we can resolve the first issue when supplying a valid hostCharset? Please let us know if you require more information on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant