Announcement

Collapse

Mirth Connect 3.12.0 Released!

Mirth Connect 3.12.0 is now available as an appliance update and on our GitHub page. This release includes database performance improvements, improves visual HL7 representation, message pruning, keystore handling, PDF generation, community contributions, and fixes several security vulnerabilities. This release also contains many improvements to commercial extensions. See the release notes for the list of fixes and updates.

Download | See What's New | Upgrade Guide | Release Notes

For discussion on this release, see this thread.
See more
See less

SOAP connector - cant't parse the WSDL

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • SOAP connector - cant't parse the WSDL

    I 've created a channel that reads XML on the source endpoint and writes the whole message as is to an SFTP server.
    The goal of this channel is try how many msgs per second Mirth can process.
    To test this capacity, I've tryed the same channel on various systems with different processor, memory ... configurations. I've found that this channel works fine on a box, but the same channel, deployed on another box fails when I try to get the WSDL.

    The box A is a Redhat EL 3, with sun jdk 1.5.0_14. Mirth 1.7.0 running inside a JBoss 4.2.0GA. When I try to get the WSDL to start testing with JMeter it works OK, and I can do the load test without problems.
    In the box B tht is a RedHat EL 4, (EM64T instead of regular intel 32-bit), same JDK, JBoss ... etc; when I try to get the WSDL with a Browser, it fails, complainig about "there must have a root element" (the original error message is in spanish), but it seems like the request:

    http://iport/services/Mirth?wsdl returns a 0-byte response.

    Doing the same test but using wget with the same request, I get the lines attached at the end of this message in server.log

    I've tryed to resintall Mirth from scratch, and no luck.

    There is another curious fact: I'm almost sure that I've tryed the *same* test with the same channel definition and it worked! the only difference was using JMeter or our custom application to generate the requests to Mirth.

    Anyone has encountered this ? any clue ?
    Thanks in advance.


    ------------------------------------------------------
    MuleMessage{id=[uniqueId not supported], payload=[B, correlationId=null, correlationGroup=-1, correlationSeq=-1, exceptionPayload=null, properties={
    Connection=true
    http.version=HTTP/1.0
    Host=localhost:18081
    User-Agent=Wget/1.10.2 (Red Hat modified)
    http.method=GET
    http.request=/services/Mirth?wsdl
    Accept=*/*
    }}
    2008-04-23 16:44:27,595 DEBUG [org.mule.impl.MuleSession] dispatching event to component: _axisbb33632d-9cae-4b9e-9d77-c8404013393c event is: Event: c6277b11-1143-11dd-bebd-cb289160a4dd, sync=true,
    stop processing=false, ImmutableMuleEndpoint{connector=com.webreach.mirth .connectors.soap.axis.transport.http.SoapConnector @1f5cc7d, endpointUri=soap://localhost:18081/services/Mirth, transformer=nu
    ll, name='soap:Mirth', type='receiver', properties={}, transactionConfig=org.mule.impl.MuleTransactionCon [email protected], filter=null, deleteUnacceptedMessages=false, initialised=true, securityFilter=nul
    l, synchronous=true, initialState=started, createConnector=0}
    2008-04-23 16:44:27,595 DEBUG [org.mule.impl.model.seda.SedaComponent] Component: _axisbb33632d-9cae-4b9e-9d77-c8404013393c has received synchronous event on: soap://localhost:18081/services/Mirth
    2008-04-23 16:44:27,595 DEBUG [org.mule.impl.model.seda.SedaComponent] _axisbb33632d-9cae-4b9e-9d77-c8404013393c : got proxy for c6277b11-1143-11dd-bebd-cb289160a4dd = proxy for: name=_axisbb33632d-
    9cae-4b9e-9d77-c8404013393c, outbound endpoint=null, send transformer=null, inbound endpointUri=null, receive transformer=null
    2008-04-23 16:44:27,599 DEBUG [org.mule.model.DynamicEntryPoint] Invoking com.webreach.mirth.connectors.soap.axis.AxisServic eComponent.onCall(org.mule.impl.MuleEventContext)
    2008-04-23 16:44:27,600 DEBUG [org.mule.providers.service.ConnectorServiceDescrip tor] Endpoint resolver not set, Loading default resolver: org.mule.impl.endpoint.UrlEndpointBuilder
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] MessageContext[email protected]
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] HEADER_CONTENT_TYPE:null
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] HEADER_CONTENT_LOCATION:null
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] Constants.MC_HOME_DIR:/opt/jboss-4.2.0.GA/server/mirth_new/deploy/mirth.sar/.mule/axisHome
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] Constants.MC_RELATIVE_PATH:/services/Mirth/services/Mirth
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] HTTPConstants.HEADER_AUTHORIZATION:null
    2008-04-23 16:44:27,602 DEBUG [com.webreach.mirth.connectors.soap.axis.AxisServic eComponent] Constants.MC_REMOTE_ADDR:localhost
    2008-04-23 16:44:27,607 WARN [org.mule.impl.model.seda.SedaModel] Component: Mirth not found returning null session
    2008-04-23 16:44:27,629 INFO [STDOUT] ****** CREANDO EMITER ******
    2008-04-23 16:44:27,630 INFO [STDOUT] CLASE POR DEFECTO :class $Proxy66 Nombre: $Proxy66
    2008-04-23 16:44:27,630 INFO [STDOUT] Defaulto portTypeName (_Proxy66)
    2008-04-23 16:44:27,630 INFO [STDOUT] generando binding name. ServicePortName:Mirth
    2008-04-23 16:44:27,719 INFO [STDOUT] ::::::::::::::-----------------------------::::::::::::::::::::::::
    2008-04-23 16:44:27,719 INFO [STDOUT] ..............Escribiendo types
    [email protected]
    2008-04-23 16:44:27,719 INFO [STDOUT] ------------------------------
    2008-04-23 16:44:27,719 INFO [STDOUT] ..............Def:
    Definition: name=null targetNamespace=http://components.mule.server.mirth.webreach.com
    Binding: name={http://components.mule.server.mirth.webreach.com}MirthSoa pBinding
    SOAPBinding ({http://schemas.xmlsoap.org/wsdl/soap/}binding):
    required=null
    transportURI=http://schemas.xmlsoap.org/soap/http
    style=rpc
    2008-04-23 16:44:27,719 INFO [STDOUT] ::::::::::::::-----------------------------::::::::::::::::::::::::
    2008-04-23 16:44:27,719 INFO [STDOUT] portTypeQName [{http://components.mule.server.mirth.webreach.com}_Proxy66] portTypeName:_Proxy66
    2008-04-23 16:44:27,755 DEBUG [org.mule.model.DynamicEntryPoint] Result of call com.webreach.mirth.connectors.soap.axis.AxisServic eComponent.onCall(org.mule.impl.MuleEventContext) is not null
    2008-04-23 16:44:27,755 DEBUG [org.mule.impl.model.DefaultMuleProxy] Outbound router on component '_axisbb33632d-9cae-4b9e-9d77-c8404013393c' doesn't have any endpoints configured.
    2008-04-23 16:44:27,756 DEBUG [com.webreach.mirth.connectors.soap.axis.transport. http.transformers.UMOMessageToHttpResponse] The transformed object is of expected type. Type is: java.lang.String
    2008-04-23 16:44:27,758 DEBUG [org.mule.providers.http.HttpMessageReceiver] Closing listener: /127.0.0.1:18081
    2008-04-23 16:44:28,762 DEBUG [org.mule.providers.http.HttpMessageReceiver] /services/Mirth?wsdl
    2008-04-23 16:44:28,762 DEBUG [org.mule.providers.http.HttpMessageReceiver] Message Received from: soap://localhost:18081/services/Mirth
    2008-04-23 16:44:28,762 DEBUG [org.mule.providers.http.HttpMessageReceiver] MuleMessage{id=[uniqueId not supported], payload=[B, correlationId=null, correlationGroup=-1, correlationSeq=-1, exception
    Payload=null, properties={
    Connection=true
    http.version=HTTP/1.0
    Host=localhost:18081
    User-Agent=Wget/1.10.2 (Red Hat modified)
    http.method=GET
    http.request=/services/Mirth?wsdl
    Accept=*/*
    }}
    2008-04-23 16:44:28,763 DEBUG [org.mule.impl.MuleSession] dispatching event to component: _axisbb33632d-9cae-4b9e-9d77-c8404013393c event is: Event: c6d9db24-1143-11dd-bebd-cb289160a4dd, sync=true,
    stop processing=false, ImmutableMuleEndpoint{connector=com.webreach.mirth .connectors.soap.axis.transport.http.SoapConnector @1f5cc7d, endpointUri=soap://localhost:18081/services/Mirth, transformer=nu
    ll, name='soap:Mirth', type='receiver', properties={}, transactionConfig=org.mule.impl.MuleTransactionCon [email protected], filter=null, deleteUnacceptedMessages=false, initialised=true, securityFilter=nul
    l, synchronous=true, initialState=started, createConnector=0}
    2008-04-23 16:44:28,763 DEBUG [org.mule.impl.model.seda.SedaComponent] Component: _axisbb33632d-9cae-4b9e-9d77-c8404013393c has received synchronous event on: soap://localhost:18081/services/Mirth
    ------------------------------------------------------

  • #2
    Re:SOAP connector - cant't parse the WSDL

    As Mirth 1.7.1 has been released today (or yesterday, not sure ...), upgrading to this version of Mirth in the same box (same Jboss, jdk .....) seems to work fine.

    I haven't found any bug corrected in the 1.7.1 that may be related to my issue, but it works!

    :?

    Comment

    Working...
    X