OSB Business -Proxy Service

Hi,
I need to call WSDL which has 2 operations. I need to pass default xml payload to operation 1 and the response I get, has to be passed to invoke operation 2. I have created 2 business services and after I create a proxy service :
How to pass default xml to business service 1 ?
How to pass response from business service 1 to business service 2 ?
Thanks

somebol, Prabhu
If I use Service Callout , I see Request Document Variable where I can pass in the request ($body/<request>), as you mentioned.But, the default XML payload to business service does not come as input to Proxy Service, I need to pass that XML payload explicitly to business service op1.
I was thinking if I have to use assign or replace to pass the XML payload to business service op1, but I am not sure how to do in my Proxy.
My Input to Proxy Service is date , which at this point is not used anywhere.
Thanks

Similar Messages

  • SOAP Header based user/password authentication in OSB 11g Proxy Service

    Hi,
    I have implemented SOAP Header based authentication in my OSB 11g Proxy Service.
    In the Security settings of my AnySOAP(Soap 1.1) HTTP Proxy service, I have amde the following changes:
    1.
    In Transport Access Control link, i selected the User predicate, and provided an user already existing on weblogic server with following roles(AppTesters, Monitors, Operators).
    The AuthorizationProvider was XACMLAuthorizer
    2.
    Under Custom Authentication, I selected the Custom User Name and Password option, and provided the below mentiioned xpaths
    User Name XPath: ./*/*:Username/text()
    User Password XPath: ./*/*:Password/text()
    3.
    In Message Access Control link, i selected the User predicate with the same user as mentioned in Transport Access Control link.
    Now, when I am testing this service from OSB Test Console, I am providing the following input.
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:N1="http://abcd.com/common/bodcomponents/transactional/model/1.0/">
    <soap:Header>
    <AuthHeader>
    <N1:Username>userXYZ</N1:Username>
    <N1:Password>passXYZ</N1:Password>
    </AuthHeader>
    </soap:Header>
    <soap:Body>
    <!-- body payload -->
    </soap:Body>
    </soap:Envelope>
    The response is "The invocation resulted in an error: ."
    The OSB server logs show the below error:
    ####<Feb 9, 2011 6:05:42 PM IST> <Error> <OSB Security> <test.abcd.co.in> <osb_server1> <[ACTIVE] ExecuteThread: '9' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5a5769b8025ef997:-2bda316:12def49100a:-7fff-0000000000000c92> <1297254942782> <BEA-387082> <Proxy service access denied (proxy: ABCD/Services/Common_HTTP_Proxy, subject: Subject: 0
    )>
    ####<Feb 9, 2011 6:05:42 PM IST> <Error> <OSB Kernel> <test.abcd.co.in> <osb_server1> <[ACTIVE] ExecuteThread: '9' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5a5769b8025ef997:-2bda316:12def49100a:-7fff-0000000000000c92> <1297254942782> <BEA-382004> <Failed to process request message for service ProxyService ABCD/Services/Common_HTTP_Proxy: com.bea.wli.sb.security.AccessNotAllowedException
    com.bea.wli.sb.security.AccessNotAllowedException
         at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:136)
         at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:117)
         at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:586)
         at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:329)
         at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:76)
         at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:134)
         at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:132)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
         at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
         at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:137)
         at com.bea.wli.sb.test.service.ServiceProcessor.invoke(ServiceProcessor.java:454)
         at com.bea.wli.sb.test.TestServiceImpl.invoke(TestServiceImpl.java:172)
         at com.bea.wli.sb.test.client.ejb.TestServiceEJBBean.invoke(TestServiceEJBBean.java:167)
         at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.invoke(TestService_sqr59p_EOImpl.java:353)
         at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
         at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
         at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
         at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
         at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Please suggest where I am going wrong in this. I have cross checked the user/pass credentials with what I am giving in the input, and it is perfectly fine.

    I have added the Username and Password as follows, since the namespace declaration was required due to the namespace prefix 'N1' in the XPath
    declare namespace N1="http://abcd.com/common/bodcomponents/transactional/model/1.0/";./AuthHeader/N1:Username/text()
    declare namespace N1="http://abcdp.com/common/bodcomponents/transactional/model/1.0/";./AuthHeader/N1:Password/text()
    I have removed the Message Access Control conditions, have only kept Transport Access Control conditions.
    If i keep the condition in Transport Access Control as "Allow access to everyone", and test with proper credentials in the Username/Password tags in SOAP Header, then it works fine. However, if I try to give an incorrect password in the SOAP Header, it denies the access. So that means the XPaths given for Username/Password are working fine. The OSB logs show the below message
    +####<Feb 10, 2011 12:59:21 PM IST> <Error> <OSB Security> <test.abcd.co.in> <osb_server1> <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <5a5769b8025ef997:-2bda316:12def49100a:-7fff-0000000000000ef2> <1297322961536> <BEA-386008> <Message level username/password authentication failed: [Security:090304]Authentication Failed: User weblogic javax.security.auth.login.FailedLoginException: [Security:090302]Authentication Failed: User weblogic denied>+
    However if i add the condition with predicate as "User" and user name argument as "weblogic", and try to pass the same in the SOAP Header as well with the correct password, it denies the access with below message in the logs.
    +####<Feb 9, 2011 6:05:42 PM IST> <Error> <OSB Security> <test.abcd.co.in> <osb_server1> <[ACTIVE] ExecuteThread: '9' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <5a5769b8025ef997:-2bda316:12def49100a:-7fff-0000000000000c92> <1297254942782> <BEA-387082> <Proxy service access denied (proxy: ABCD/Services/Common_HTTP_Proxy, subject: Subject: 0+
    +)>+
    +####<Feb 9, 2011 6:05:42 PM IST> <Error> <OSB Kernel> <test.abcd.co.in> <osb_server1> <[ACTIVE] ExecuteThread: '9' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <5a5769b8025ef997:-2bda316:12def49100a:-7fff-0000000000000c92> <1297254942782> <BEA-382004> <Failed to process request message for service ProxyService ABCD/Services/Common_HTTP_Proxy: com.bea.wli.sb.security.AccessNotAllowedException+
    com.bea.wli.sb.security.AccessNotAllowedException
    at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:136)
    at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:117)
    at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:586)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:329)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:76)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:134)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:132)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:137)
    at com.bea.wli.sb.test.service.ServiceProcessor.invoke(ServiceProcessor.java:454)
    at com.bea.wli.sb.test.TestServiceImpl.invoke(TestServiceImpl.java:172)
    at com.bea.wli.sb.test.client.ejb.TestServiceEJBBean.invoke(TestServiceEJBBean.java:167)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.invoke(TestService_sqr59p_EOImpl.java:353)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

  • Catching and rethrowing a SOAP Fault from an OSB 11g Proxy service

    Hello,
    We have a chain of proxy services (that last one of which calls a business service) in our 11.1.1.6 OSB project.  At one of the lower levels, we successfully throw a fault like this:
    <soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Fault xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
        <soap:faultcode>SOAP-ENV:Client</soap:faultcode>
        <soap:faultstring>Non-Existent User</soap:faultstring>
        <soap:faultActor>Client who consumed this Web Service operation</soap:faultActor>
        <soap:detail>
          <sc:UserNonExistentFault xmlns:sc="http://xmlns.sc.com/Services/V1">
            <sc:CustomerNumber>12345</sc:CustomerNumber>
          </sc:UserNonExistentFault>
        </soap:detail>
      </soap:Fault>
    </soapenv:Body>
    In the proxy service which calls this proxy service, I tried to catch this fault in an Error Handler so that I could confirm that it's available for me to re-throw back up the chain.  Curiously, the proxy service which calls that proxy service cannot see that fault.  But rather it sees what appears to be an OSB-overridden fault:
    <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
      <con:errorCode>BEA-380000</con:errorCode>
      <con:reason>com.bea.wli.sb.pipeline.PipelineException</con:reason>
      <con:details>
        <err:ErrorResponseDetail xmlns:err="http://www.bea.com/wli/sb/errors">
          <err:response-metadata xsi:type="sb:SBResponseMetaDataXML" xmlns:sb="http://www.bea.com/wli/sb/transports/sb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <tran:headers xsi:type="sb:SBResponseHeadersXML" xmlns:tran="http://www.bea.com/wli/sb/transports"/>
            <tran:response-code xmlns:tran="http://www.bea.com/wli/sb/transports">1</tran:response-code>
            <tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8</tran:encoding>
          </err:response-metadata>
        </err:ErrorResponseDetail>
      </con:details>
      <con:location>
        <con:node>PipelinePairNode</con:node>
        <con:pipeline>PipelinePairNode_request</con:pipeline>
        <con:stage>GetCustomerByNumber</con:stage>
        <con:path>request-pipeline</con:path>
      </con:location>
    </con:fault>
    I have tried printing out the values of $body, $fault, $outbound and $inbound from the calling proxy service's Error Handler just to see if our <sc:UserNonExistentFault> is nested anywhere therein.  Unfortunately, it is nowhere to be found.
    How can we force OSB to NOT override our faults with OSB-framework faults and, instead, just throw our custom fault all the way up the chain and back to the consumer?
    Thank you,
    Michael

    I think I figured this out.
    In proxyService-2, build the <soap:Fault> and assign it to the body, then Reply with Failure (as you mentioned above).
    When proxyService-1 receives this, it will still be in the $body variable.  But the $fault variable is now populated with a BEA-38000 error.  It seems that as long as the $fault variable has data in it, then the OSB system will throw that instead of my fault (ignoring the <soap:Fault> I put into the body).
    So what I did was to Delete the $fault variable in the error handler of proxyService-1, then Reply with Failure (again).
    It would seem as if the inner workings of OSB has some logic like:
    if $fault is not null, throw the BEA-####### fault.  Otherwise, return the contents of the $body.
    By removing the fault, I effectively got to that "else/otherwise" condition.
    Of course, the Reply with Failure is still needed to ensure that an HTTP 500 error is passed with the fault (per the SOAP specification).
    Cheers!
    Michael

  • OSB Exposing Proxy Service as Web Service to external consumers

    Hi all,
    I am trying to expose my proxy service which I have defined in OSB11g to be exposed to external applications and consumers, rather than listening to a queue or using a business service to receive the traffic. What would be the best approach and practice to this issue? Needless to say that since I mentioned this proxy needs to be exposed as web service, I'll be expecting back response. The endpoint that I am getting as result of creating this proxy comes to be in following format:
    /<project_name>/Services/ProxyServices/MyProxy
    This fine for apps deployed on the same domain, but not if they are not deployed on the same domain.
    thanks in advance

    From the information shared you, looks like you want to create a SOAP over HTTP webservice in OSB which will be the one exposed to external consumers.
    1. So to create such a Proxy service, you will need to define the interface using a WSDL (as mentioned by Pierluigi) first.
    2. Once done, you can create a Proxy (SOAP/HTTP) based using the above WSDL. Then implement your business logic in the message flow.
    3. As a part of the configuration, you can define the context root of the service. (by default you might be getting /<project_name>/Services/ProxyServices/MyProxy)
    You can customize as required, for e.x change this to /services/MyProxy
    4. The final URL that can be used to access the above proxy will be as follow:
    http://<hostname>:<port>/services/MyProxy for HTTP
    https://<hostname>:<port>/services/MyProxy for HTTPS accordingly.
    Depending on the way your domain is configured (managed servers) you can change the hostname and port.
    So irrespective of where this service is deployed, you should be able to access it.
    Do let me know in case my understanding is incorrect.
    Thanks,
    Patrick

  • OSB 1031: proxy service and publishing JMS messages with no duplicates

    Hi all,
    we have a Web Service proxy that publishes messages into a JMS queue. The queue is persistent and the related connection factory is XA enabled.
    The proxy does the call to the JMS business service from a route node.
    If a failure occurrs after the publishing returns successfully, the caller receives back an error and it will try again to call the web service proxy.
    As the message has been published successfully and was not rollbacked by the proxy, the second call could put on the JMS queue a duplicate message.
    As far as we know only with JMS proxy service, OSB starts a transaction within the pipeline or are we wrong ?
    What do you suggest in order to avoid such a scenario described above ?
    Thanks and regards
    ferp

    Try this link to depict the behavior
    http://allthingsmdw.blogspot.com.au/2012/09/osb-service-callouts-and-oql-part-1.html

  • Reset the HTTP response code in OSB for proxy service

    Hi,
    I created a HTTP proxy service in ALSB with any XML message option. There are some business scnearios for which i need to send a custom error message in the HTTP body. I am replacing the $body variable with the error message and sending reply with success.As i am using reply with success it sends a HTTP response status code as 200 Ok.
    However based on different error conditions i want to send appropraite http response code. How can this be achieved?

    I would like to share the solution so that it would be useful to all the users of the forum.
    There is a http:http-response-code element in the $inbound variable which is optional element. You need to insert this element to the $inbound using the insert action. Here is the extract of the code:
    Insert [<http:http-response-code>401</http:http-response-code>] [ as last child of ] [./con:transport/con:response] in [inbound]
    Please note namespace con belongs to "http://www.bea.com/wli/sb/context".
    Edited by: [email protected] on Aug 12, 2009 10:47 PM

  • OSB 11g proxy service test console fail with Broken pipe

    Hi everyone.
    I have a strange problem with OSB test console (and sometime with java client). The proxy I built cannot response after several request. In other word, I tried to test console for dozens time, sometime I cannot have response from OSB. I wait for the response for 5 minutes and get some strange exception, that is broken pipe, but error code is not unique.
    I cannot understand why my proxy service stuck in that exception. Can you help me to solve it ?
    Any suggestion is appreciated.
    P/S: that is log record on server:
    <BEA-423405> <An exception [Broken pipe] was thrown while rendering the content at [/jsp/test/ServiceResult.jsp].
    java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at weblogic.servlet.internal.ChunkOutput.writeChunkTransfer(ChunkOutput.java:568) at weblogic.servlet.internal.ChunkOutput.writeChunks(ChunkOutput.java:539) at weblogic.servlet.internal.ChunkOutput.flush(ChunkOutput.java:427) at weblogic.servlet.internal.CharsetChunkOutput.flush(CharsetChunkOutput.java:298) at weblogic.servlet.internal.ChunkOutput$2.checkForFlush(ChunkOutput.java:648) at weblogic.servlet.internal.CharsetChunkOutput.write(CharsetChunkOutput.java:200) at weblogic.servlet.internal.ChunkOutputWrapper.write(ChunkOutputWrapper.java:148) at weblogic.servlet.internal.ServletOutputStreamImpl.write(ServletOutputStreamImpl.java:148) at weblogic.servlet.internal.WLOutputStreamWriter.writeBytes(WLOutputStreamWriter.java:168) at weblogic.servlet.internal.WLOutputStreamWriter.flushBuffer(WLOutputStreamWriter.java:212) at weblogic.servlet.internal.WLOutputStreamWriter.write(WLOutputStreamWriter.java:132) at weblogic.servlet.internal.WLOutputStreamWriter.write(WLOutputStreamWriter.java:113) at weblogic.servlet.internal.DelegateChunkWriter.print(DelegateChunkWriter.java:118) at weblogic.servlet.internal.ChunkOutputWrapper.print(ChunkOutputWrapper.java:171) at weblogic.servlet.jsp.JspWriterImpl.print(JspWriterImpl.java:177) at com.bea.alsb.console.taglibs.test.TestExpandableDataSection.doStartTag(TestExpandableDataSection.java:202) at jsp_servlet._jsp._test.__serviceresult._jspService(__serviceresult.java:341) at weblogic.servlet.jsp.JspBase.service(JspBase.java:34) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at org.apache.beehive.netui.pageflow.PageFlowPageFilter.continueChainNoWrapper(PageFlowPageFilter.java:455) at org.apache.beehive.netui.pageflow.PageFlowPageFilter.runPage(PageFlowPageFilter.java:432) at org.apache.beehive.netui.pageflow.PageFlowPageFilter.doFilter(PageFlowPageFilter.java:284) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:524) at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444) at org.apache.beehive.netui.pageflow.scoping.internal.ScopedRequestDispatcher.include(ScopedRequestDispatcher.java:119) at com.bea.netuix.servlets.controls.content.JspContent.beginRender(JspContent.java:552) at com.bea.netuix.servlets.controls.content.NetuiContent.beginRender(NetuiContent.java:365) at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:485) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:326) at com.bea.netuix.nf.UIControl.render(UIControl.java:582) at com.bea.netuix.servlets.controls.PresentationContext.render(PresentationContext.java:486) at com.bea.netuix.servlets.util.RenderToolkit.renderChild(RenderToolkit.java:146) at com.bea.netuix.servlets.jsp.taglib.RenderChild.doStartTag(RenderChild.java:62) at jsp_servlet._framework._skeletons._wliconsole.__flowlayout._jspService(__flowlayout.java:271) at weblogic.servlet.jsp.JspBase.service(JspBase.java:34) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183) at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:526) at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444) at com.bea.netuix.servlets.controls.application.laf.JspTools.renderJsp(JspTools.java:130) at com.bea.netuix.servlets.controls.application.laf.JspControlRenderer.beginRender(JspControlRenderer.java:72) at com.bea.netuix.servlets.controls.application.laf.PresentationControlRenderer.beginRender(PresentationControlRenderer.java:65) at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:481) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:326) at com.bea.netuix.nf.UIControl.render(UIControl.java:582) at com.bea.netuix.servlets.controls.PresentationContext.render(PresentationContext.java:486) at com.bea.netuix.servlets.util.RenderToolkit.renderChild(RenderToolkit.java:146) at com.bea.netuix.servlets.jsp.taglib.RenderChild.doStartTag(RenderChild.java:62) at jsp_servlet._framework._skeletons._wliconsole._popupwindow.__gridlayout._jspService(__gridlayout.java:312) at weblogic.servlet.jsp.JspBase.service(JspBase.java:34) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183) at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:526) at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444) at com.bea.netuix.servlets.controls.application.laf.JspTools.renderJsp(JspTools.java:130) at com.bea.netuix.servlets.controls.application.laf.JspControlRenderer.beginRender(JspControlRenderer.java:72) at com.bea.netuix.servlets.controls.application.laf.PresentationControlRenderer.beginRender(PresentationControlRenderer.java:65) at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:481) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:326) at com.bea.netuix.nf.UIControl.render(UIControl.java:582) at com.bea.netuix.servlets.controls.PresentationContext.render(PresentationContext.java:486) at com.bea.netuix.servlets.util.RenderToolkit.renderChild(RenderToolkit.java:146) at com.bea.netuix.servlets.jsp.taglib.RenderChild.doStartTag(RenderChild.java:62) at jsp_servlet._framework._skeletons._wliconsole.__flowlayout._jspService(__flowlayout.java:271) at weblogic.servlet.jsp.JspBase.service(JspBase.java:34) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183) at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:526) at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444) at com.bea.netuix.servlets.controls.application.laf.JspTools.renderJsp(JspTools.java:130) at com.bea.netuix.servlets.controls.application.laf.JspControlRenderer.beginRender(JspControlRenderer.java:72) at com.bea.netuix.servlets.controls.application.laf.PresentationControlRenderer.beginRender(PresentationControlRenderer.java:65) at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:481) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:326) at com.bea.netuix.nf.UIControl.render(UIControl.java:582) at com.bea.netuix.servlets.controls.PresentationContext.render(PresentationContext.java:486) at com.bea.netuix.servlets.util.RenderToolkit.renderChild(RenderToolkit.java:146) at com.bea.netuix.servlets.jsp.taglib.RenderChild.doStartTag(RenderChild.java:62) at jsp_servlet._framework._skeletons._wliconsole._popupwindow.__gridlayout._jspService(__gridlayout.java:312) at weblogic.servlet.jsp.JspBase.service(JspBase.java:34) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183) at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:526) at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:444) at com.bea.netuix.servlets.controls.application.laf.JspTools.renderJsp(JspTools.java:130) at com.bea.netuix.servlets.controls.application.laf.JspControlRenderer.beginRender(JspControlRenderer.java:72) at com.bea.netuix.servlets.controls.application.laf.PresentationControlRenderer.beginRender(PresentationControlRenderer.java:65) at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:481) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.runOutbound(Lifecycle.java:208) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:162) at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:388) at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:258) at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:199) at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:251) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:130) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111) at java.security.AccessController.doPrivileged(Native Method) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)Regards
    Cuong Pham

    Hi, everyone.
    This is my proxy service that was tested above. Can you show me some instructions for tuning it? On these day, I get many bad performance responses from that service.
    <?xml version="1.0" encoding="UTF-8"?>
    <xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env" xmlns:http="http://www.bea.com/wli/sb/transports/http" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:con="http://www.bea.com/wli/sb/pipeline/config" xmlns:con1="http://www.bea.com/wli/sb/stages/transform/config" xmlns:con2="http://www.bea.com/wli/sb/stages/config" xmlns:con3="http://www.bea.com/wli/sb/stages/routing/config" xmlns:con4="http://www.bea.com/wli/sb/stages/logging/config">
      <ser:coreEntry isProxy="true" isEnabled="true" isTracingEnabled="false">
        <ser:binding type="SOAP" isSoap12="false" xsi:type="con5:SoapBindingType" xmlns:con5="http://www.bea.com/wli/sb/services/bindings/config">
          <con5:wsdl ref="DnICT_OSB_Project/resources/wsdl/PortalSide"/>
          <con5:port>
            <con5:name>PortalSideSOAP</con5:name>
            <con5:namespace>http://www.example.org/PortalSide/</con5:namespace>
          </con5:port>
          <con5:selector type="SOAP body"/>
          <con5:WSI-compliant>false</con5:WSI-compliant>
        </ser:binding>
        <ser:monitoring isEnabled="false">
          <ser:aggregationInterval>10</ser:aggregationInterval>
          <ser:pipelineMonitoringLevel>Pipeline</ser:pipelineMonitoringLevel>
        </ser:monitoring>
        <ser:reporting>true</ser:reporting>
        <ser:logging isEnabled="true">
          <ser:logLevel>debug</ser:logLevel>
        </ser:logging>
        <ser:sla-alerting isEnabled="true">
          <ser:alertLevel>normal</ser:alertLevel>
        </ser:sla-alerting>
        <ser:pipeline-alerting isEnabled="true">
          <ser:alertLevel>normal</ser:alertLevel>
        </ser:pipeline-alerting>
        <ser:ws-policy>
          <ser:binding-mode>wsdl-policy-attachments</ser:binding-mode>
        </ser:ws-policy>
      </ser:coreEntry>
      <ser:endpointConfig>
        <tran:provider-id>http</tran:provider-id>
        <tran:inbound>true</tran:inbound>
        <tran:URI>
          <env:value>/DnICT_OSB_Project/proxy-services/DnICT_WSDL_PS</env:value>
        </tran:URI>
        <tran:inbound-properties/>
        <tran:all-headers>false</tran:all-headers>
        <tran:provider-specific>
          <http:inbound-properties/>
        </tran:provider-specific>
      </ser:endpointConfig>
      <ser:router>
        <con:pipeline type="request" name="GetRequestInfo_pipeline_pair_request">
          <con:stage name="InputProcess_stage">
            <con:context>
              <con2:varNsDecl namespace="http://www.example.org/PortalSide/" prefix="por"/>
              <con2:varNsDecl namespace="http://www.example.org/PortalSide_Test/" prefix="por1"/>
              <con2:varNsDecl namespace="http://www.example.org/OutputSchema" prefix="out"/>
            </con:context>
            <con:actions>
              <con1:assign varName="docId">
                <con2:id>_ActionId-2456490176600649155--723117a.130d7d91065.-7b86</con2:id>
                <con1:expr>
                  <con2:xqueryText>$body/por:checkStatus/documentId/text()</con2:xqueryText>
                </con1:expr>
              </con1:assign>
              <con1:assign varName="depId">
                <con2:id>_ActionId-2456490176600649155--723117a.130d7d91065.-7b69</con2:id>
                <con1:expr>
                  <con2:xqueryText>$body/por:checkStatus/departmentId/text()</con2:xqueryText>
                </con1:expr>
              </con1:assign>
              <con1:assign varName="srvId">
                <con2:id>_ActionId-4566721321360037228--34ba1746.13170e34dc9.-7d41</con2:id>
                <con1:expr>
                  <con2:xqueryText>$body/por:checkStatus/serviceId/text()</con2:xqueryText>
                </con1:expr>
              </con1:assign>
            </con:actions>
          </con:stage>
        </con:pipeline>
        <con:pipeline type="response" name="GetRequestInfo_pipeline_pair_response"/>
        <con:pipeline type="error" name="_onErrorHandler-4305915913837985194--28b0abb9.13175ecaaa7.-7d31">
          <con:stage name="stage1">
            <con:context>
              <con2:userNsDecl namespace="http://www.example.org/OutputSchema" prefix="ns2"/>
            </con:context>
            <con:actions>
              <con1:replace varName="body">
                <con2:id>_ActionId-6209548530523967653-4b474d03.13177132d5d.-7f08</con2:id>
                <con1:location>
                  <con2:xpathText>.</con2:xpathText>
                </con1:location>
                <con1:expr>
                  <con2:xqueryText><![CDATA[<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
         <soapenv:Fault>
              <faultcode>soapenv:Server</faultcode>
              <faultstring>{concat($fault/ctx:errorCode,': ',$fault/ctx:reason)}</faultstring>
              <detail>
                   <ns2:faultResponse>
                        <errorCode>{$fault/ctx:errorCode/text()}</errorCode>
                        <reason>{$fault/ctx:reason}</reason>
                        <location>
                             <node>{$fault/ctx:location/ctx:node/text()}</node>
                             <path>{$fault/ctx:location/ctx:path/text()}</path>
                        </location>
                        <operation>{$inbound/ctx:service/ctx:operation/text()}</operation>
                        <uri>{$inbound/ctx:transport/ctx:uri/text()}</uri>
                        <host>{$inbound/ctx:transport/ctx:request/tp:headers/http:Host/text()}</host>
                        <request_body>{$copyBody}</request_body>
                   </ns2:faultResponse>
              </detail>
         </soapenv:Fault>
    </soapenv:Body>]]></con2:xqueryText>
                </con1:expr>
              </con1:replace>
              <con2:reply isError="true">
                <con2:id>_ActionId-4305915913837985194--28b0abb9.13175ecaaa7.-7cc3</con2:id>
              </con2:reply>
              <con4:log>
                <con2:id>_ActionId-556838872042008716--23ff25e2.131bcfb490d.-7fae</con2:id>
                <con4:logLevel>error</con4:logLevel>
                <con4:expr>
                  <con2:xqueryText>concat('Error while trying to query DnICT web service: ',$fault/ctx:errorCode,' : ',$fault/ctx:reason)</con2:xqueryText>
                </con4:expr>
              </con4:log>
            </con:actions>
          </con:stage>
        </con:pipeline>
        <con:flow>
          <con:pipeline-node name="GetRequestInfo_pipeline_pair">
            <con:comment>Lay cac thong tin trong form search</con:comment>
            <con:request>GetRequestInfo_pipeline_pair_request</con:request>
            <con:response>GetRequestInfo_pipeline_pair_response</con:response>
          </con:pipeline-node>
          <con:branch-node type="condition" name="branching_public_services">
            <con:context>
              <con2:varNsDecl namespace="http://www.example.org/PortalSide/" prefix="por"/>
            </con:context>
            <con:branch-table variable="depId">
              <con:branch name="SoTTTT">
                <con:operator>equals</con:operator>
                <con:value>1</con:value>
                <con:flow>
                  <con:branch-node type="condition" name="DnICT_dept_services">
                    <con:context/>
                    <con:branch-table variable="srvId">
                      <con:branch name="DichVu_1">
                        <con:operator>equals</con:operator>
                        <con:value>64</con:value>
                        <con:flow>
                          <con:route-node name="RouteToDnICT_BS" error-handler="_onErrorHandler-4305915913837985194--28b0abb9.13175ecaaa7.-7d31">
                            <con:context>
                              <con2:varNsDecl namespace="http://www.example.org/PortalSide/" prefix="por"/>
                              <con2:varNsDecl namespace="http://www.example.org/PortalSide_Test/" prefix="por1"/>
                              <con2:varNsDecl namespace="http://www.example.org/OutputSchema" prefix="out"/>
                            </con:context>
                            <con:actions>
                              <con3:route>
                                <con2:id>_ActionId-4566721321360037228--34ba1746.13170e34dc9.-7b4c</con2:id>
                                <con3:service ref="DnICT_OSB_Project/busines-services/DnictServiceBS" xsi:type="ref:BusinessServiceRef" xmlns:ref="http://www.bea.com/wli/sb/reference"/>
                                <con3:operation>selecttrangthai</con3:operation>
                                <con3:outboundTransform>
                                  <con1:assign varName="username">
                                    <con2:id>_ActionId-4566721321360037228--34ba1746.13170e34dc9.-7b4b</con2:id>
                                    <con1:expr>
                                      <con2:xqueryText>fn:string('stttt')</con2:xqueryText>
                                    </con1:expr>
                                  </con1:assign>
                                  <con1:assign varName="password">
                                    <con2:id>_ActionId-4566721321360037228--34ba1746.13170e34dc9.-7b4a</con2:id>
                                    <con1:expr>
                                      <con2:xqueryText>fn:string('123456')</con2:xqueryText>
                                    </con1:expr>
                                  </con1:assign>
                                  <con1:replace contents-only="true" varName="body">
                                    <con2:id>_ActionId-4566721321360037228--34ba1746.13170e34dc9.-7b49</con2:id>
                                    <con1:expr>
                                      <con2:xqueryText><![CDATA[<soap:selecttrangthai       xmlns:soap="http://soapinterop.org/">
         <username       xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">{$username}</username>
         <password       xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">{$password}</password>
         <masohoso       xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">{$docId}</masohoso>
    </soap:selecttrangthai>]]></con2:xqueryText>
                                    </con1:expr>
                                  </con1:replace>
                                </con3:outboundTransform>
                                <con3:responseTransform/>
                              </con3:route>
                            </con:actions>
                          </con:route-node>
                        </con:flow>
                      </con:branch>
                      <con:default-branch>
                        <con:flow/>
                      </con:default-branch>
                    </con:branch-table>
                  </con:branch-node>
                </con:flow>
              </con:branch>
              <con:branch name="SoGTVT">
                <con:operator>equals</con:operator>
                <con:value>2</con:value>
                <con:flow/>
              </con:branch>
              <con:default-branch>
                <con:flow/>
              </con:default-branch>
            </con:branch-table>
          </con:branch-node>
        </con:flow>
      </ser:router>
    </xml-fragment>

  • Stuck Thread - JMS Business proxy Service (ALSB 2.5)

    Hi All,
    We are having a jms proxy service which uses a JMS Business Service to send messages to a jms queue on weblogic 8.1 sp6. The alsb domain runs on weblogic 9.2.The jms proxy service is made single threaded by configuring a suitable work manager.
    Now and then, we get a stuck thread issue in production and the proxy service stops consuming the messaging off the jms queue in wls 9.2. These are the errors in the logs:
    <[ACTIVE] ExecuteThread: '18' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1235437298516> <BEA-000337> <[STUCK] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "695" seconds working on the request "weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl@5321caf", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
    Thread-70 "[STUCK] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, in native, waiting, priority=1, DAEMON> {
    -- Waiting for notification on: weblogic.rjvm.ResponseImpl@51961a5[fat lock]
    jrockit.vm.Threads.waitForSignal(Native Method)
    java.lang.Object.wait(Native Method)
    java.lang.Object.wait(Native Method)
    weblogic.rjvm.ResponseImpl.waitForData(ResponseImpl.java:73)
    ^-- Lock released while waiting: weblogic.rjvm.ResponseImpl@51961a5[fat lock]
    weblogic.rjvm.ResponseImpl.getTxContext(ResponseImpl.java:100)
    weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:109)
    weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:223)
    weblogic.jms.dispatcher.DispatcherImpl_816_WLStub.dispatchSyncTranFuture(Unknown Source)
    weblogic.jms.dispatcher.DispatcherInteropAdapter.dispatchSyncTranFuture(DispatcherInteropAdapter.java:80)
    weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSyncTran(DispatcherWrapperState.java:230)
    weblogic.jms.dispatcher.DispatcherAdapter.dispatchSyncTran(DispatcherAdapter.java:51)
    weblogic.jms.client.JMSProducer.toFEProducer(JMSProducer.java:1047)
    weblogic.jms.client.JMSProducer.deliveryInternal(JMSProducer.java:670)
    weblogic.jms.client.JMSProducer.sendInternal(JMSProducer.java:455)
    weblogic.jms.client.JMSProducer.send(JMSProducer.java:352)
    weblogic.jms.client.WLProducerImpl.send(WLProducerImpl.java:1009)
    weblogic.deployment.jms.WrappedMessageProducer.send(WrappedMessageProducer.java:157)
    com.bea.wli.sb.transports.jms.JmsOutboundMessageContext$SendAction.run(JmsOutboundMessageContext.java:795)
    com.bea.wli.sb.transports.jms.JmsOutboundMessageContext.send(JmsOutboundMessageContext.java:500)
    com.bea.wli.sb.transports.jms.JmsTransportProvider.sendMessageAsync(JmsTransportProvider.java:612)
    jrockit.reflect.CompiledMethodInvoker.invoke0(Unknown Source)
    jrockit.reflect.CompiledMethodInvoker.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    com.bea.wli.sb.transports.Util$1.invoke(Util.java:241)
    $Proxy39.sendMessageAsync(Unknown Source)
    com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:137)
    com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:437)
    com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:328)
    com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:503)
    com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:415)
    stages.publish.runtime.PublishRuntimeStep.processMessage(PublishRuntimeStep.java:106)
    com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:327)
    com.bea.wli.sb.stages.impl.SequenceRuntimeStep.processMessage(SequenceRuntimeStep.java:33)
    com.bea.wli.sb.pipeline.PipelineStage.processMessage(PipelineStage.java:100)
    com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:771)
    com.bea.wli.sb.pipeline.Pipeline.processMessage(Pipeline.java:73)
    com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:771)
    com.bea.wli.sb.pipeline.PipelineNode.doRequest(PipelineNode.java:47)
    com.bea.wli.sb.pipeline.Node.processMessage(Node.java:57)
    com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:771)
    com.bea.wli.sb.pipeline.Router.processMessage(Router.java:141)
    com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:75)
    com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:646)
    com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:645)
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:627)
    com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:264)
    com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:108)
    weblogic.ejb.container.internal.MDListener.execute(MDListener.java:429)
    weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
    weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:292)
    weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4060)
    weblogic.jms.client.JMSSession.execute(JMSSession.java:4012)
    weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4467)
    weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
    weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    jrockit.vm.RNI.c2java(Native Method)
    Any one know the root cause of this issue or ways to prevent this?
    Also Is there a way to make the proxy service to reconsume messages off the queue without a server restart?
    Thanks,
    Atheek

    Hi atheek, did you find the solution??
    I already got the same/identic issue, do you mind giving me an aid?
    Really thanks
    Regards,
    Mr.K

  • OWSM Custom Assertion for OSB RESTful Proxy Service

    Hello,
    I have implemented a Custom OWSM Assertion to authenticate requests with a custom token placed in a HTTP header. I can assign this assertion to a SOAP proxy service as a security policy. However I am not able to assign the very same policy to a Restful JSON service (Proxy service defined as messaging service with text message type). I am getting this error:
    [OSB Kernel:398128]One of the Web service policy attached is not allowed on service default/RESTful because the service binding does not support it
    My policy:
    <wsp:Policy xmlns="http://schemas.xmlsoap.org/ws/2004/09/policy"
        xmlns:custom="http://custom"
        orawsp:status="enabled"
        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" orawsp:category="security"
        orawsp:attachTo="binding.server" wsu:Id="http_customtoken_authentication_policy"
        xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
        wsp:Name="custom/http_customtoken_authentication_policy">
        <custom:customTokenHttpAuthentication
            orawsp:Silent="true" orawsp:Enforced="true"
            orawsp:name="Http custom token Authentication" orawsp:category="security/authentication" >
            <orawsp:bindings>
                <orawsp:Config orawsp:name="authenticationassertion"
                    orawsp:configType="declarative">
                    <orawsp:PropertySet orawsp:name="headerName">
                        <orawsp:Property orawsp:name="headerName"
                            orawsp:type="string" orawsp:contentType="constant">
                            <orawsp:Value>CustomToke</orawsp:Value>
                        </orawsp:Property>
                    </orawsp:PropertySet>
                </orawsp:Config>
            </orawsp:bindings>
        </custom:customTokenHttpAuthentication>
    </wsp:Policy>
    My OSB version is OSB 11g PS6 and in this version, OWSM policies are supported for Restful services. Interesting is, that the built-in policy oracle/http_basic_auth_over_ssl_service_policy can be assigned to my Restful service. Do you know a solution for the problem, how can I assign my custom assertion to the Restful service? Anything special is needed in the policy definition?
    Thanks.
    Marian

    Hi Vinoth,
    The users/groups are picked up from the LDAP configured in Security Realms->myRealm->Providers
    You basically have 2 options:
    - You can configure your LDAP in Providers
    - Use the DefaultAuthenticator that weblogic provides you by default.
    If you do not want to configure an LDAP, and want to use weblogic's default, then all you have to do is add users and groups in Security Realms->myRealm->Users and Groups
    Do mark this as useful or answered, if this has helped.

  • OSB: Configuring Proxy Service

    Hi,
    As I understand the "Proxy service" invokes the "Business service".
    Therefore when I configure the "ProxyService" there should be a "Create From Existing Service" section in the "General Configuration".
    But in my workbench I dont see the "Create From Existing Service" section.
    There is no way I can link the Proxy and the Business services.
    Any idea why that section is missing in my workbench and how to resolve it?
    Regards,
    Deepak

    Hi Deepak,
    Good catch. I never observed this specific thing through the Workbench. Yes through the workbench this options seems to be unavailable.
    You can invoke the business service via the Proxy Service by creating a route node and then selecting the business service in the route node configuration.
    this way your proxy service can invoke the business service.
    This might not be the solution you are looking for, but still wanted to let you know that it is not a must to use the "Create From Existing Service" option. The ""Create From Existing Service" would in turn also do the same thing (marked in bold). You can check this out using the sbconsole. :)
    Hope this helps.
    Thanks,
    Patrick

  • Call 2 or More Business/proxy services in parallel

    Hi ,
    As per our requirement we have to create a common proxy which has to route 2 or more services(proxy/business) in parallel.Please provide us link or sample /inf(apart from split join concept) to acquire the solution for this since we are new to OSB.(like flow or flow N in BPEL)
    Thanks.................

    Sorry, the last post was incorrect.
    What it happens is that the .jsp of the BIB calls it self when you navigate it. This is the code from the client side:
    &lt;a href="#" accesskey="I" onclick="document.BIForm.target='';submitForm('BIForm',1,{source:'FDEResumen_Presentation1',event:'bi_page'});return false"&gt;&lt;img src="/MetalsaBIWar/cabo/images/cache/es/b-Ir-i.gif" alt="Ir a cambiar p&aacute;gina: Clave de acceso = i" border="0" align="absmiddle" width="28" height="22"&gt;&lt;/a&gt;
    The problem when you put it in the Portal is that it's the same code but embedded in a new html (that is the portal page). When you try to navigate it references at the Portal Page, not at the .jsp page.
    This is the question. How can I program the .jsp (of a BI Bean) in JDeveloper so that the reference to navigate must be the .jsp itself and not a dinamic reference?
    Thanks in advance,
    IM

  • OSB : Restful proxy service with basic authentication

    Hi,
    We want to expose a restful webservice from OSB with Basic authentication (username and password). Let us know what is the procedure for the same.
    THanks,

    Hi Vinoth,
    The users/groups are picked up from the LDAP configured in Security Realms->myRealm->Providers
    You basically have 2 options:
    - You can configure your LDAP in Providers
    - Use the DefaultAuthenticator that weblogic provides you by default.
    If you do not want to configure an LDAP, and want to use weblogic's default, then all you have to do is add users and groups in Security Realms->myRealm->Users and Groups
    Do mark this as useful or answered, if this has helped.

  • Using weblogic unit-of-order (UOO) in osb proxy service

    Hi,
    I have a JMS Queue deployed to Weblogic server. The messages inside the queue are grouped using the JMS_BEA_Unit-of-order (UOO) Weblogic feature.
    Now i have a OSB 10g Proxy Service which reads messages from this Queue. The problem is, on recieving a message, acknowledgement is send immediately, thus removing the message from the Queue and next message with same Unit-Of-Order is ready for processing.
    But the business scenario needs the first message to be read, processed and then decide to acknowledge or not. The second message should not be read unless the previous message is processed successfully.
    Can anyone help with this scenario?
    Thanks,
    Alex
    Edited by: user9024636 on Feb 11, 2010 2:57 AM

    Hi Steve,
    I don't know what you need UOO for, but, for some use cases, its sufficient just to configure a default UOO on the sender's connection factory.
    Propapagation of a UOO from one desitnation to another is not automatic (except via SAF, or unless OSB somehow does it for you). Plain vanilla JMS apps do this by calling msg.getStringProperty("JMS_BEA_UnitOfOrder") on the received message and setUnitOfOrder() on the javax.jms.WLProducer.
    You might find that there's more OSB expertise on an OSB newsgroup (I think it's one of the newsgroups under [url http://forums.oracle.com/forums/category.jspa?categoryID=194]SOA & Process Management).
    Regards,
    Tom

  • Consume JMS Unit-Of-Work message through OSB proxy service

    Hi,
    Anyone know how to consume a JMS Unit-Of-Work (UOW) message using an OSB Proxy Service of JMS type?
    I can submit a unit-of-work JMS message (which consists of multiple constituent messages) using an OSB proxy & business service combination and setting the UOW transport headers appropriately. I can also separately produce and consume Java objects via a JMS queue where the consumption is done via OSB proxy (of java request message type), but these aren't UOW messages.
    Apparently as soon as it is a UOW message then the message consumed is an ObjectMessage ArrayList and one has to use the "Java" request message type for the JMS consumer proxy, but I'm unsure of how to create the concurrent client jar to use it in the same proxy service's JMS transport configuration in order to output the ObjectMessage ArrayList (UOW message). 
    Ideally I'd like to consume a single UOW XML message via an OSB JMS proxy service.
    Any pointers would be appreciated.
    R

    Finally got this working!!
    For posterity: Needed to insert Java Object JMS messages on the OSB JMS producer (Business Service) side with correct UOW jms transport header set in route node. Then consume the Unit-Of-Work message on the other side via jms proxy service with "java" request message type, with appropriate jar containing the Object class as the "Client jar" in the JMS Transport configuration. In the same JMS consumer proxy I had to do a java callout, passing the contents of $body, using java.util.ArrayList and javax.jms.ObjectMessage, as input into a method (.. decodeJavaMessage(ArrayList<ObjectMessage> ...)). In this java callout class you can get to each individual ObjectMessage via typecasting the get() method on the Arraylist to (ObjectMessage) and then just typecast the getObject() on this Objectmessage into your original Java Class (same as what you inserted onto queue originally).
    Hope this saves someone some time in future!

  • Osb proxy service on https,help?

    The Client use https protocol to send message to OSB'S proxy service,so how to configue the proxy service?
    At present:
    service type:Messaging Service
    request message type:xml
    reponse message type :none
    transport:http
    https required:unchenk
    it works on http.
    Anybody can tell me the way to configue a proxy service to receive the https message ?

    As you are using the xml message type for request message you can easily get the value through the message that you have defined.
    Just put a report or log to see whether the incoming message is holding the value that ur sending.
    Then continue from there as per your usecase.
    Sorry missed one info, then you have to select the method that you are going to use in https. You can test this from osb test console by selecting the method as per your usecase.
    Thanks,
    Vijay
    Edited by: veejai24 on 14-May-2012 03:43

Maybe you are looking for