简体   繁体   English

WSO2 ESB ISO 8583连接器错误

[英]WSO2 ESB ISO 8583 Connector Error

I have implemented ISO 8583 Connector on WSO2 ESB according to the WSO2 Documentation: https://docs.wso2.com/display/ESBCONNECTORS/Configuring+ISO8583+Connector+Operation 我已经根据WSO2文档在WSO2 ESB上实现了ISO 8583连接器: https : //docs.wso2.com/display/ESBCONNECTORS/Configuring+ISO8583+Connector+Operation

I sent the following XML Message from Rest Client: 我从Rest Client发送了以下XML消息:

<ISOMessage>
  <data>
    <field id="0">0200</field>
    <field id="3">568893</field>
    <field id="4">000000020000</field>
    <field id="7">0110563280</field>
    <field id="11">456893</field>
    <field id="44">DFGHT</field>
    <field id="105">ABCDEFGHIJ 9871236548</field>
  </data>

I got the following error in the ESB System Log: 我在ESB系统日志中收到以下错误:

Couldn't packed ISO8583 Messages    More
TID[-1234] [ESB] [2016-09-07 05:23:28,028] ERROR {org.wso2.carbon.connector.ISO8583.ISO8583MessageProducer} - Couldn't packed ISO8583 Messages org.jpos.iso.packager.GenericPackager.readFile(GenericPackager.java:204) org.jpos.iso.packager.GenericPackager.(GenericPackager.java:120) org.wso2.carbon.connector.ISO8583.ISO8583PackagerFactory.getPackager(ISO8583PackagerFactory.java:29) org.wso2.carbon.connector.ISO8583.ISO8583MessageProducer.packedISO8583Message(ISO8583MessageProducer.java:53) org.wso2.carbon.connector.ISO8583.ISO8583MessageProducer.connect(ISO8583MessageProducer.java:39) org.wso2.carbon.connector.core.AbstractConnector.mediate(AbstractConnector.java:32) org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:84) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59) org.apache.synapse.mediators.template.TemplateMediator.mediate(TemplateMediator.java:104) org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:148) org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:84) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97) org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59) org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158) org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:210) org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:403) org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:151) org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) java.lang.Thread.run(Thread.java:745) 

Please advise for any idea. 请提出任何想法。

Best Regards 最好的祝福

是否按照https://docs.wso2.com/display/ESBCONNECTORS/Configuring+ISO8583+Connector+Operation所述将jposdef.xml文件复制到ESB_HOME_Directory中

I think, in your case you use inbound for the test-server. 我认为,就您而言,您将入站用于测试服务器。 If that so, you have to do the following 如果是这样,您必须执行以下操作
1. You can comment the line in the following class, then build the pom and got the new jar and paste it into the lib directory (remove the previous jar from dropins) https://github.com/wso2-extensions/esb-inbound-iso8583/blob/master/src/main/java/org/wso2/carbon/inbound/iso8583/listening/ConnectionRequestHandler.java#L61 1.您可以在以下类中注释该行,然后构建pom并获取新的jar并将其粘贴到lib目录(从dropins中删除先前的jar) https://github.com/wso2-extensions/esb- inbound-iso8583 / blob / master / src / main / java / org / wso2 / carbon / inbound / iso8583 / listening / ConnectionRequestHandler.java#L61

2 . 2。 Use the following proxy and the following inbound configuration 使用以下代理和以下入站配置

<proxy name="ISO8583_Test" startOnLoad="true" trace="disable" transports="https http"> <description/> <target> <inSequence> <ISO8583.init> <serverHost>localhost</serverHost> <serverPort>5000</serverPort> </ISO8583.init> <ISO8583.sendMessage/> <log level="full"/> <respond/> </inSequence> <outSequence> <log/> <send/> </outSequence> </target> </proxy>



<sequence name="request" onError="fault"> <log level="full"/> </sequence>


<inboundEndpoint class="org.wso2.carbon.inbound.iso8583.listening.ISO8583MessageConsumer" name="custom_listener" onError="fault" sequence="request" suspend="false"> <parameters> <parameter name="sequential">true</parameter> <parameter name="inbound.behavior">listening</parameter> <parameter name="port">5000</parameter> </parameters> </inboundEndpoint>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM