ESB Routing functionality

Hi,
With esb it is easy to create filters to route message based on their content. If two filters match, both targets are invoked.
one question:
Is there any method to implement a if-then-else in this filters? Or even better:
case1, case2, default....

Hi,
Do you mean a scenario like:
if 'condition 1'
then
  route to 'output 1'
elsif 'condition 2'
then
  route to 'output 2'
etc..Yes you can do this by defining more than 1 filter per routing service. Each filter relates to one of the above conditions. The output items can either be an adapter or another routing service. The same applies to a case construct.
The default construct-filter I guess would be coded as
if not ('condition 1' and 'condition 2' and ...)
then
  route to 'output n'
end ifKind regards,
H

Similar Messages

  • ESB Routing Service Byte Order Mark error

    Hi,
    I have a esb routing service to accept soap messages from an external system. The external system sents messages with a Byte Order Mark for UTF8 at the start. If i look at the tcp messages i see the following:
    POST /event/DefaultSystem/CaseVerhuizing/EsbStuf0204Service HTTP/1.1
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client
    Protocol 2.0.50727.42)
    Content-Type: text/xml; charset=utf-8
    SOAPAction: "http://www.egem.nl/StUF"
    Host: ux920:7777
    Content-Length: 2382
    Expect: 100-continue
    Connection: Keep-Alive
    HTTP/1.1 100 Continue
    ...<?xml version="1.0" encoding="utf-8"?><soap:Envelope
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    The three dots signify the hexadecimal value EF BB BF which is for UTF8. This raises an error however in iAS:
    HTTP/1.1 400 Bad Request
    Date: Mon, 16 Jul 2007 14:41:32 GMT
    Server: Oracle-Application-Server-10g/10.1.3.1.0 Oracle-HTTP-Server
    Content-Length: 158
    Connection: close
    Content-Type: text/html; charset=ISO-8859-1
    Bad Request
    Error parsing envelope: (1, 1) Start of root element
    expected
    It seems the esb routing service is trying to parse the Byte Order Mark as xml and therfore can not find the soap envelope tag? Any help is appreciated!
    Kind Regards,
    Andre Jochems
    Message was edited by:
    ajochems

    Hi Andre,
    We got exactly the same error as you did. Your analysis is also correct; the first 3 bytes of the reply are not interpreted by BPEL/ESB as a BOM, but as 'real' characters.
    The problem is due to the fact that the UTF-8 BOM is actually optional in the specifications, and obligatory for UTF-16. The UTF-8 BOM practically has no meaning, and is never used in most SOA applications. However the guys that made the webservice you need to consume are (wrongly) convinced that the UTF-8 BOM is supposed to be there according to the OASIS/W3C specs. Which is not true btw...
    For more info on BOMs, check: http://en.wikipedia.org/wiki/Byte_Order_Mark
    Unfortunately I don't have the code for our 'proxy' service anymore. I remember that we simply made a little servlet, that uses input- and outputstreams. The inputstream then filters the BOM. Remember to also proxy the WSDL to 'rewrite' the endpoint ;-)
    HTH,
    Bas

  • How to generate a Web Service Proxy for an ESB Routing Service?

    Hi,
    I have a SOAP service behind an ESB Routing Service. I am aware that i can call this ESB Service at the SOAP endpoint which can be found at the ESB Console after registration.
    But, i want to invoke this service using a Web Service Proxy. My understanding is that, i need to use the WSDL generated for the ESB Routing Service to generate the proxy. The WSDL which can be seen in JDeveloper does not have any soap bindings and hence the tool does not allow me to generate any proxy.
    Also, the two WSDLs whose URLs can be found at the ESB Console do not have the soap endpoint properties.
    Can someone help me out on the same?
    Thanks and regards,
    Priya.

    Priya,
    Just take the SOAP endpoint and suffix it with a ?wsdl
    Even the Concrete WSDL endpoint should be having a SOAP endpoint.
    HTH
    Uday

  • How to resolve - LIBTUX_CAT:4053: ERROR: Routing function failed - error ?

    Hi,
    We are using TUX 8.1 and i am getting the error :
    LIBTUX_CAT:4053: ERROR: Routing function failed
    while invoking a tpforward call.
    My ubb file for the new service is below.
    "NewXXInqu"
    LOAD=50 PRIO=50
    BUFTYPE="ALL"
    ROUTING="PARTITION"
    TRANTIME=90
    AUTOTRAN=N
    DEFAULT: LOAD=50 PRIO=50 BUFTYPE="ALL" AUTOTRAN=N
    *ROUTING
    "PARTITION"
    FIELD="PARTITION_ID"
    BUFTYPE="FML32"
    RANGES="1:P1,2:P2"
    Its also giving the error : GP_CAT:1064: ERROR: Routing field for 'NewXXInqu' null.
    LIBTUX_CAT:1401: WARN: tpforward tpacall failure TPESYSTEM - internal system error
    I have the NewXXInqu object file created,which is linked to NewXXSvr. This server NewXXSvr is up and running, and i can see that using ps -ef.
    can any one please tell me what is that im missing here. What does routing field 'xx' null mean ?
    Even if i invoke my new service directly, it is giving the same error :GP_CAT:1064: ERROR: Routing field for'xxx' null,
    LIBTUX_CAT:4053: ERROR: Routing function failed.
    Appreciate your reply,
    thanks,
    gopi.

    Hi,
    i am using tuxedo 9.1 and i am getting the same error:
    tpacall("PP_GA_RECARGA3", 0x0x8088140, 140, 0x0)
    GP_CAT:1064: ERROR: Routing field for 'PP_GA_RECARGA3' null
    LIBTUX_CAT:4053: ERROR: Routing function failed
    tpacall = -1 [tperrno TPESYSTEM]
    tpabort(0x0)
    My ubb file for the service is belong:
    *SERVICES
    PP_GA_RECARGA3
    LOAD=50 PRIO=50
    BUFTYPE="ALL"
    TRANTIME=30
    AUTOTRAN=Y
    SVCTIMEOUT=60
    ROUTING=snum_telefono
    *ROUTING
    snum_telefono
    FIELD=__routing__
    RANGES="0:GRP_PPGA_00,1:GRP_PPGA_01"
    BUFTYPE="FML32"
    The service define is:
    PP_GA_RECARGA3_snum_telefono 443 string - -
    PP_GA_RECARGA3_stipo_recarga 444 string - -
    PP_GA_RECARGA3_fimp_recarga 445 double - -
    PP_GA_RECARGA3_scod_moneda 446 string - -
    PP_GA_RECARGA3_scod_promocion 447 string - -
    PP_GA_RECARGA3_scod_usuario 448 string - -
    PP_GA_RECARGA3_lper_validez 449 long - -
    PP_GA_RECARGA3_ssec_actuacion 450 string - -
    PP_GA_RECARGA3__rpr_ret 451 long - -
    If i invoke the service in other environment with similar configuration, the ulog show this:
    tpacall("PP_GA_RECARGA3", 0x0x80882d8, 140, 0x0)
    tpacall = 64 [CLIENTID {1280130829, 0, 430}]
    tpservice({"PP_GA_RECARGA3", 0x10, 0x0x814a4f0, 1164, 0, 0, {1280130829, 0, 430}})
    tpalloc("FML32", "", 1024)
    All it's right
    The difference is that one it's over vmware.
    Does anyone know if this can influence in the routing?
    Thanks,
    Paula.

  • The Apple time capsule provides disc memory, a wifi network, and router functions. It would normally be connected to the internet via cable modem.  If I wanted to use a wireless cellular connection to the internet, how would I do that?

    The Apple time capsule provides disc memory, a wifi network, and router functions. It would normally be connected to the internet via cable modem.  If I wanted to use a wireless cellular connection to the internet, how would I do that?

    If I wanted to use a wireless cellular connection to the internet, how would I do that?
    The wireless cellular device would need to have an Ethernet port, to provide an Ethernet signal to the Time Capsule's WAN port.

  • Exception in ESB Header Functions (ehdr:getRequestHeader)

    Hi,
    I was working on the context based routing in the ESB.
    My scenario is a simple File to File scenario where I want to make some changes
    in the Filter Expressions in the Routing service part.
    I want to include the Header functions in order to route the file adapters.
    If I Input some two text files of different name in Input File what file name I have
    specified in the Header must only written in the Output File.
    For this I am trying it in RS Filter Expression part and when I drop the Header
    function ehdr:getRequestHeader function some exception is shown like
    Funtion of name "ehdr:getRequestHeader" not Found .
    I was also using the sample Headersupport demo working component which they
    have specified in the following link.
    http://www.oracle.com/technology/products/integration/esb/files/esb-presentation-headers.pdf
    Anyone have Idea on this.

    See the samples on the new ESB OTN page. http://www.oracle.com/technology/products/integration/esb/index.html
    There isn't much GUI support but look at the JMS sample jdev project and study the filters for routing and xsl for setting headers. The hardest part is setting the namespaces correctly.

  • CAVS Integration error | The process was with ESB Routing services

    Hi All,
    We tried configuring the CAVS to integrate with simulator.
    When we execute the test case, we are getting the below error:
    Scenario is :
    1. Created the Requester ABCS in ESB and it is been routing the message to EBS canonical.
    2. Provider ABCS is created and been talking to the participating application in our case it is BPEL service.
    Everything was good to study the documents but when we executed the scenario, getting the below exception..
    Need an urgent help regarding this...
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><faultcode xmlns="">env:ESBMessageProcessingFailed</faultcode><faultstring xmlns="">ESB Couldn't process message due to unhandled exception</faultstring><detail xmlns=""><EventName>AS400Sys.ProcessSubscriptionCustomerGWReqABCSImpl.process</EventName><Cause>An unhandled exception has been thrown in the ESB system. The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: ; nested exception is:
    dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/; nested exception is:
    dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1804)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1531)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.executeRequestResponseOperation(WSIFOperation_JaxRpc.java:1210)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:907)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:810)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:832)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(OutboundAdapterService.java:223)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(OutboundAdapterService.java:135)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(InitialEventDispatcher.java:406)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:164)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(EventOracleSoapProvider.java:399)
    at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(EventOracleSoapProvider.java:225)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:956)
    at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:466)
    at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
    at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
    at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:194)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/
    at oracle.j2ee.ws.client.dii.BasicCall.directInvoke(BasicCall.java:762)
    at oracle.j2ee.ws.client.dii.BasicCall.invoke(BasicCall.java:660)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1787)
    ... 60 more
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:1020)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:810)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:832)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(OutboundAdapterService.java:223)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(OutboundAdapterService.java:135)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(InitialEventDispatcher.java:406)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:164)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:205)
    at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(EventUtils.java:136)
    at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(EsbRouterSubscription.java:309)
    at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(EventDispatcher.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(InitialEventDispatcher.java:545)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(InitialEventDispatcher.java:527)
    at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(EventDispatcher.java:94)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:160)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1988)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(BusinessEvent.java:1467)
    at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(EventOracleSoapProvider.java:399)
    at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(EventOracleSoapProvider.java:225)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:956)
    at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:466)
    at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
    at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
    at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:194)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: ; nested exception is:
    dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/; nested exception is:
    dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1804)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1531)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.executeRequestResponseOperation(WSIFOperation_JaxRpc.java:1210)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:907)
    ... 57 more
    Caused by: dynamic invocation error: oracle.j2ee.ws.saaj.soap.SOAPVersionMismatchException: Mime Header Content-Type: text/xml requires SOAP envelope namespace: http://schemas.xmlsoap.org/soap/envelope/
    at oracle.j2ee.ws.client.dii.BasicCall.directInvoke(BasicCall.java:762)
    at oracle.j2ee.ws.client.dii.BasicCall.invoke(BasicCall.java:660)
    at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1787)
    ... 60 more
    ".

    Indeed that fixes the problem... weird that this actually solved the issue.
    In the documentation the only information I found was the following:
    "Is Node Key Key: Select if the XPath node is a key value to be used in matching arriving test requests with the simulator."
    But that's about it.
    Anyone any idea why this is necessary/mandatory?
    rgds,
    Kevin

  • Exception in creating XSLT transform for ESB Routing Service

    Hi,
    I am trying to create a Routing service in an ESB project. When I try to create the XSLT in a routing rule I get this error "Error while reading wsdl file esb:///ESB_projects/...../ship.wsdl ... Failed to read WSDL file at location esb:///ESB_projects/...../ship.wsdl . java.net.Socket Exception.
    I am able to create and register other adapter/soap services on the ESB server but not able to create this transform.Could anybody guide me as to how to resolve this?
    Regards,
    Sri

    The file doesn't physically exist on the server. If you explore the subfolders of the %OH%\integration\esb\oraesb folder, you'll see how ESB projects are deployed.

  • ESB routing question

    Hi,
    I have a question on the service that we are writing for the ESB. We are doing some simple transformations on the messages that the ESB consumes through AQ, then outputs to various end points(file adapter, soap adapter, DB adapter) after going through a routing service.
    My question is that it seems like the message delivery to the end points is very sequential. I thought that the message was suppose to hit all the end points, regardless of it's state, and move on to the next end point, and only retry the end points that failed. But this does not seem to be the case. Is there a way to achieve this with Oracle ESB?
    Thanks.

    The issue is that the routing service is sequential. We have a few adapters on the same routing service, and we observe that the message moves through the adapters sequentially.
    We are going to try to break out the routing service and end points so that each process dequeues from AQ, goes to one routing service, and one end point. Hopefully this way, there won't be any blocking, and all RS and endpoint can execute independently. The concern then is having a multi-consumer AQ, and I'm not sure if there are any issues with it.

  • Using custom wsdl to esb routing service node

    Hi,
    I am working on a ESB flow, The entire flow works with ESB generated WSDLs. But, now, I want to use our own WSDL files, so I configured the starting Routing Service node to use existing WSDL.
    To do this, I made the following changes.
    Initially I was feeding XML file throug a File Reader node, and it was easy to test. Now, since I am working with our own WSDL, I removed File Reader node and created another Routing Service node with uses our custom WSDL file. I am now testing the flow by using OC4J web services feature. It provided me a web based form where in I can populate/feed values in. When I do this, I get an error like below:
    java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Software caused connection abort: connect
    Does anybody know how to fix this?
    Thanks,

    sorry your '"mysoapaction"' funda didnt work....
    can you tell me that what should be the value in p_url??
    http_req := utl_http.begin_request(p_url, 'POST', 'HTTP/1.1');
    utl_http.set_header(http_req, 'Content-Type', 'text/xml');
    utl_http.set_header(http_req, 'Content-Length', length(request_text));
    utl_http.set_header(http_req, 'SOAPAction', p_soap_action);
    utl_http.write_text(http_req, request_text);
    http_resp := utl_http.get_response(http_req);
    utl_http.get_header_by_name(http_resp,'Content-Length',l_head_out);
    l_cont_length := to_number(l_head_out);
    IF l_cont_length > 0
    THEN
    utl_http.read_text(http_resp, p_response);
    END IF;

  • END point URL for ESB Routing service says NOT FOUND

    Hi All,
    For the routing services in ESB, The link of WSDL is opening up fine, but the link of endpoint URI for the routing service is failing with the message below message. When i invoke the WSDL using SOAP UI, i get back the the same error message. I tried bouncing the server , but of no help. I also notice that slide directory ESB_Projects gives 404 error on any browser.
    So when i click below url for any of the routing service
    http://<hostname>:<port>/event/<systemName>/<serviceGroupName>/AddressStandardizeRS
    I get below error in browser-
    Not Found
    The requested URL /event/<System Name>/<Service Group Name>/<Routing Service Name> was not found on this server.
    Oracle-Application-Server-10g/10.1.3.1.0 Oracle-HTTP-Server Server at odevsoa.local1.wbcgp.com Port 7777

    Check if the port of ESB in your server is open.
    I think that the port is: 7777
    try from ESB server:
    wget WSDLURI
    if you got the file then the port is closed.

  • ESB -- Routing the fault

    hi,
    I am new to ESB development. Please share your thoughts on the following:
    1. When I register a new/modified ESB process, a dialogbox with the below message comes up, if ok is clicked then shows the Registration Summary window with service registration successful message.
    "Reload services from ESB Server failed while trying to query new service definitions from server. Exception=Start of root element expected."
    2. I created an esb process which connects two dbs.
    DBAdapter1(polling)--> RS1 -->RS2--> DBAdapter2(insert). RS1(fault) -->SOAP Invocation (A bpel process)
    I have a BPEL process (With pick activity, onMessage branch) for exception handling. The same schema is used to create a fault/reply in RS2. But the DB errors(say, target DB is down) are not routed to BPEL process even if I select the soap service in Fault target.
    Thanks,
    AP

    Sorry Dave, I was browsing old posts and I've just realized that you answered and asked a question :)
    I don't know at all if it is a convincing or even a real use case. What I needed to do is to expose a service which outputs a group of logically cohesive data, but these data are available from different services. That's why I tried merging the XML documents. I don't think it's really the scope of BPEL, but maybe I'm dead wrong. Additionally, this is a very simple transformation and I read this thread: Where to do transformations?  ESB or BPEL where you mentioned the performance difference between ESB and BPEL, which can be convincing.
    Thanks,
    Patrik

  • Problem with ESB routing service

    I have an ESB project that has a routing service to route a request message to 2 separate web services depending on some particular content in the message.
    simple classic content-based routing.
    i built a prototype on my local virtual machine, it worked fine.
    now i am building the real project at the client site, it is not working. here is some of the things i found;
    in my working prototype, after i deploy the ESB project into OC4J, i can see that a web service end point is created for me on esb-rt application in oc4j, with a port like "__soap_myrouting_execute_ppt", and it would be the entry point to my routing service;
    but in the other environment, after i deploy the ESB project, there is nothing created under esb-rt;
    in my working prototype, if i go into ESB console, under the "definition" tab of my routing service, i can click on the "concrete WSDL URL" and it gives me the wsdl for the routing service;
    but in the other environment, when i click on the "concrete WSDL URL", it shows an error page in my browser, "The XML page cannot be displayed ... XML document must have a top level element";
    i suppose this is because the esb-rt port has not been created properly and hence the wsdl is not there to be viewed.
    can anyone help with this or give me some direction as to where to look for logs for more details.
    thanks!

    after a bit of hunting on the BPEL server, i managed to get some detailed error from j2ee log;
    it's consistent with my observation and i know what's wrong with it, it's the <server name> pointing to a wrong place
    it should be pointing to our dev server but this logged detail shows it's pointing to out UAT server for some reason;
    I don't know how it ended up like this, but can someone tell me how to fix it? thanks.
    <SUPPL_DETAIL><![CDATA[oracle.webservices.provider.ProviderException: java.io.IOException: Server returned HTTP response code: 500 for URL: http://<server name>:80/esb/wsil/MyTestSystem/MySOAPFacade?wsdl
         at oracle.j2ee.ws.server.provider.ProviderConfigImpl.addService(ProviderConfigImpl.java:126)
         at oracle.tip.esb.configuration.ServiceBusConstants.addService(ServiceBusConstants.java:888)
         at oracle.tip.esb.common.system.ServiceEventsHandler.handleCreateService(ServiceEventsHandler.java:91)
         at oracle.tip.esb.common.system.MetadataChangeListener.handleServiceEvent(MetadataChangeListener.java:136)
         at oracle.tip.esb.common.system.MetadataChangeListener.onMetadataChange(MetadataChangeListener.java:85)
         at oracle.tip.esb.common.control.ControlMessageHandler.handleMessage(ControlMessageHandler.java:115)
         at oracle.tip.esb.server.dispatch.agent.ESBWork.process(ESBWork.java:178)
         at oracle.tip.esb.server.dispatch.agent.ESBWork.run(ESBWork.java:132)
         at oracle.j2ee.connector.work.WorkWrapper.runTargetWork(WorkWrapper.java:242)
         at oracle.j2ee.connector.work.WorkWrapper.doWork(WorkWrapper.java:215)
         at oracle.j2ee.connector.work.WorkWrapper.run(WorkWrapper.java:190)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:825)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: http://<server name>:80/esb/wsil/MyTestSystem/MySOAPFacade?wsdl
         at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1149)
         at java.net.URL.openStream(URL.java:1007)
         at oracle.j2ee.ws.server.provider.WSDLUtils.getWSDLDefinition(WSDLUtils.java:48)
         at oracle.j2ee.ws.server.provider.ProviderConfigImpl.addService(ProviderConfigImpl.java:120)
         ... 12 more
    ]]></SUPPL_DETAIL>

  • Invoking an ESB Routing Service

    Hi,
    I have a routing service that i have installed on an Oracle ESB Server. When i test the web service from Oracle Application Server (by searching for the routing service port from the Oracle Apps Server itself) - its sucessful.
    The problem i have is that the Routing service needs to be invoked from an external application they are encountering an error - a SOAP Exception: faultCode=HTTP Response Code -405.
    I tried invoking the routing service from Soap UI and i get an error - with the response fault being env:ESBMessageProcessingFailed.
    In both the last two cases, I dont see an instance being created for that request in the ESB control.
    Any ideas in resolving this is highly appreciated.
    Thanks.

    Hi,
    I had the similar issue, the problem I found is that whenever there is a key workd 'event' in the target URL then the system will look for the target on the same system source system you invoke the service instead of looking for the remote system where the ESB is lying.
    I also guess this happens when there are two targeted systems in your ESB.
    For this edit your WSDL file and remove the do remove the one target alias name. and keep only only. Hope this will help you.
    --Khaleel                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • ESB Routing service - Filter Expression

    Hi,
    I am trying to use content based routing in my ESB flow.
    I use a JMS adapter to consume a message defined by simple schema as follows
    <?xml version="1.0" encoding="windows-1252" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns="http://www.oracle.com/bpel_esb"
    targetNamespace="http://www.oracle.com/bpel_esb"
    elementFormDefault="qualified">
    <xsd:element name="StatusInformation">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="processName" type="xsd:string"/>
    <xsd:element name="timeStamp" type="xsd:dateTime"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    My routing criteria is based on element /StatusInformation/processName
    I used the following expression in the Filter section
    /ns0:StatusInformation/ns0:processName = 'BPELProcess1'
    Which isn't actually passing through.
    I need to know of some inputs on building such common expressions and also on tracking messages in ESB.
    Thanks a lot
    Srini.

    I enabled "validate payload at runtime" option in the definition.
    The instance erred out and I got the below payload in the Error tab.
    <actionData xmlns="http://xmlns.oracle.com/bpel/sensor">
    <header>
    <sensor sensorName="ActivitySensor_1" classname="oracle.tip.pc.services.reports.dca.agents.BpelActivitySensorAgent" kind="activity" target="Assign_1" xmlns:pc="http://xmlns.oracle.com/bpel/sensor" xmlns:tns="http://xmlns.oracle.com/BPELProcess1">
    <activityConfig evalTime="completion">
    <variable outputDataType="StatusInformation" outputNamespace="http://www.oracle.com/bpel_esb" target="$jmsInput"/>
    </activityConfig>
    </sensor>
    <instanceId>30014</instanceId>
    <processName>BPELProcess1</processName>
    <processRevision>1.0</processRevision>
    <domain>default</domain>
    <timestamp>2007-11-01T16:27:20.966+05:30</timestamp>
    <midTierInstance>PC-SRGNANAS-IN:8888</midTierInstance>
    </header>
    <payload>
    <activityData>
    <activityType>assign</activityType>
    <evalPoint>completion</evalPoint>
    </activityData>
    <variableData>
    <dataType>2005</dataType>
    <data>
    <StatusInformation xmlns="http://www.oracle.com/bpel_esb">
    <processName>BPELProcess1</processName>
    <timeStamp>2007-11-01T16:27:20</timeStamp>
    </StatusInformation>
    </data>
    <queryName/>
    <target>$jmsInput</target>
    <updaterName>Assign_1</updaterName>
    <updaterType>assign</updaterType>
    </variableData>
    </payload>
    </actionData>
    Thanks again for the response.

Maybe you are looking for

  • Oracel 11gR1 RAC Cluster issue

    We have 2-node Oracle 11gR2 RAC on HP-UX 11.31 environment. It was running lase 2 month without any issue. We got some netconfig issue, and node-1 got rebooted today. after the reboot cluster didn't not start on node-1, database is running on node-2.

  • How can i get my email picture to print from my computer

    how can i get my printer to print from eprinter

  • Replace multiple characters in a string

    Hi, I have some string fields that contain special characters such as ô and û and I want to replace them with ō and ū, and their upper case equivalents as well. How do I write a single formula that would find any of these characters in a string and r

  • Which Oracle XE dialect?

    Please, could help me? I am a new user Oracle, could help me, please? Which dialect for Oracle XE could usage in the Hibernate? I already used OracleDialect and Oracle9Dialect, but it didn't function. Certain of your understanding, at once I thank. U

  • CIN-STO

    Hello We have a bonded warehouse. Client import the Material but donot pay the CVD, Customs Duty, ED cess &H ED cess on CVD, ED CESS &HED CESS obN Basic Customs duty through import PO. A stock transport order is created with supplying plant as Bonded