OSB 11g acting as a JMS Proxy

I was hoping that someone can clear my understanding of OSB and how it interacts with JMS.
I created a JMS server, connection and topic in WLS. It works great. I am able to subscribe and publish from a java client and from an OSB business service.
Our use case is to use OSB as a "front end" to JMS if you will. We want JMS clients to be able to connect to OSB and subscribe to our JMS topic (durable). Is it possible to subscribe to a proxy service from a JMS client? How do I do it?
The next thing we are going to try to do is have an OSB process listen to our JMS topic and invoke a web service when a new message is published. Any guides on this?
Thanks so much,
Sam

We want JMS clients to be able to connect to OSB and subscribe to our JMS topic (durable). Is it possible to subscribe to a proxy service from a JMS client? How do I do it?I don't think subscribing to a proxy service is possible. Instead create a separate queue (or any other storage), for your client application and let OSB pull the message from source queue and pass it to target storage (may be another JMS queue)
The next thing we are going to try to do is have an OSB process listen to our JMS topic and invoke a web service when a new message is published. Any guides on this?This approach is quite similar to what I mentioned above. Just create a JMS proxy service to let it consume messages from topic and create a Business Service (WSDL based web-service) to invoke the target web-service. In the message flow of JMS proxy you may have transformation if required, and then route the message to business service which will eventually deliver the message to target web-service.
Regards,
Anuj

Similar Messages

  • OSB 11G xsl/xquery question in Proxy

    OSB 11G
    In Proxy, I have to invoke a business service which has 3 operations
    I need to use response of first 2 operations,as request to third operation along with some input xml to OSB Proxy.
    customer, group, severity are hard coded.(which will be input to OSB)
    How do I add/insert response from op1 after <string>customer</string> ??
    and response from op2 after <string>group</string> . ??
    <InvokecreateRequest_InputVariable>
    <part name="parameters" >
    <createRequest>
    <sid>1959439747</sid> // is resp from operation1, which is request to operations3
    <creatorHandle/>
    *<attrVals>* // this is array of string
    <string>customer</string>
    <string>cnt:08DF89FC07516A41B228587DBE75B6A7</string> //resp from op1, that has to be request to op3
    <string>group</string>
    <string>B79AAF63D870F845980A</string> //input to OSB
    <string>severity</string>
    <string>2</string> //input to OSB
    *</attrVals>*
    <propertyValues>
    <string/>
    </propertyValues>
    <template/>
    <attributes>
    <string>persistent_id</string>
    </attributes>
    </createRequest>
    </part>
    </InvokecreateRequest_InputVariable>
    Also, should I use assign or insert in Proxy ??

    Not sure exactly what you need, but here is a basic layout of what you need to do.
    Make a service callout to the first operation and save the response in a variable, for ex $resOne
    Then make a service callout to the second operation ans save the response in a variable for ex $resTwo.
    Now use a replace or assign action to create the request for the third operation:
    If you are using a Route action on Route node to call the third operation, you should use a replace action and replace the contents of $body with the XML content as needed. If you are going to use another service callout, then you should use an assign to create a request variable.
    In either case, this is what your XQuery should look like:
    <InvokecreateRequest_InputVariable>
    <part name="parameters" >
    <createRequest>
    <sid>{$resOne/ns:ElementName/ns:SID/text()}</sid>     // Here you will populate value from $resOne using a correct XPath
    <creatorHandle/>
    <attrVals>
    <string>customer</string>
    <string>cnt:08DF89FC07516A41B228587DBE75B6A7</string>
    {$resOne}    // here you are inserting the complete response from Operation one
    <string>group</string>
    {{$resTwo}    // here you are inserting the complete response from Operation Two, You can choose to populate these values separately inside variables like for SID above.
    <string>B79AAF63D870F845980A</string>
    <string>severity</string>
    <string>2</string> //input to OSB
    </attrVals>
    <propertyValues>
    <string/>
    </propertyValues>
    <template/>
    <attributes>
    <string>persistent_id</string>
    </attributes>
    </createRequest>
    </part>
    </InvokecreateRequest_InputVariable>

  • OSB -11g - Calling JMS Proxy Service in a stage

    Hi,
    When we createa JMS based proxy service, the proxy service keeps on polling the JMS Queue for any new messages arriving in the queue. But I do not want the proxy service to keep on polling the Queue. Instead I want to call the JMS Proxy Service in any stage (of any other Proxy Service) using a service callout. It means that I do not want the Queue to be polled always, instead the queue should be polled only when this JMS Proxy Service is invoked.
    Is it possible to do? If so, how?
    Thanks,
    Sanjay

    Hi Anuj,
    Following is my requirement:
    The producer wants to interact with us using Web Services. The input payload has some more values (username and password) apart from the HL7 data (base64 encoded) itself. I have to receive the input payload, authenticate the call and convert the HL7 encoded message into an XML and send it to the consumer.
    What have I done till now:
    1) I have created two Proxy Services PS1 and PS2
    2) Proxy Service (PS1) will be invoked by the producer.
    3) Then I get the username, password and data from the payload
    4) Populate the username and password in the SOAP Header and HL7 data in SOAP Body
    5) Call PS2 from PS1
    6) In PS2 I have configured Message Level Security to authenticate with the username and password
    7) After authentication I make a Java Callout to decode the base64 encoded HL7 data
    8) I now have written my own HL7 sender (Java code) which wraps the decoded HL7 data with MLLP requirements and then send it to the B2B server using a Socket (TCP connection). I do a Java Callout to this Java class.
    9) In B2B I have configured a RTP (Remote Trading Partner) which has a MLLP channel.
    10) I created a ADT message document and a ACK document
    11) I created two agreements between HTP and RTP (one agreement receives the HL7 data from the TRP using MLLP and another which sends the ACK to the RTP using MLLP channel)
    12) In the receiveing agreement I have configured a JMS channel (on the HTP side) becuase of which B2B receives the HL7 Pipe delimited data and translates it and then pushes the XML data into the JMS queue (which needs to be transformed to producer XML)
    13) I have also configured a JMS channel for the RTP which I am using in second agreement to get the acknowledgement. Because of this the ACK is placed in a JMS queue.
    I need to poll this JMS queue in order to send the ACK back to the producer (which I have to do in the response pipeline of PS2). Hence I wanted to pop the message from the JMS queue in the response pipeline and then send that message.
    Please advice if my approach is correct.
    Thanks,
    Sanjay
    Edited by: Sanjay Bharatiya on 17-Mar-2011 12:06 PM

  • How to do service callout with the incoming JMS message in OSB 11g

    Hello All,
    I have a specific requirement for which I am creating a kind of POC where I need some help in OSB, however am new to OSB.
    My Environment:
    1> I have a request queue (deployed on a WLS domain) - WFReq_WS
    2> I have a response queue (deployed on a WLS domain) - WFRes_WS
    3> I have created a ProxyService (request/response type) in OSB 11g which is simply mapping the incoming message in WFReq_WS to WFRes_WS
    4> I have a WebService (it is currently a simple hello WebService for testing) which takes a string and returns the same string with an added 'Hi' in front of it (e.g. If you send Jack, it will return 'Hi Jack')
    My Requirement:
    1> I have to do some mechanism in OSB, by which while mapping the message from WFReq_WS to WFRes_WS (through the proxy service I have), it will pick the JMS message (which will be a string/text) and will make a service callout to the Webservice I mentioned using the message as the input parameter of the WebService.
    2>Now when the response of the WebService will come, OSB should send this response as the message in the response queue (WFRes_WS) I mentioned above.
    To simplify the requirement using an example:
    A> I will send a text/String message (say Jack) to the request queue (WFReq_WS)
    B> OSB should pick the message (Jack) and make a service callout to the webservice
    C> webservice will return 'Hi Jack'
    D> OSB should send this to the response queue (WFRes_WS)
    I know the above might look very basic question to the PROs, but please elaborate (step by step) what need to be done, since I do not know OSB.
    Thanks a lot for your help !

    Your example points A and D are easily done by having a "Proxy Service" which has the following details:
    Service Type = Messaging Service
    Request and Response type = Text
    Protocol = jms
    Endpoint URI = your request queue (format like 'jms://localhost:7013/weblogic.jms.XAConnectionFactory/QueueJNDIName')
    Checkmark "response" so that the proxy service automatically delivers the response to another queue - your response queue
    Response URI = jms://localhost:7013/weblogic.jms.XAConnectionFactory/QueueResponse
    Now since your "Hello" webservice is (probably) a SOAP xml service you need to "convert" your text based JMS message to xml before sending it on to the "Hello" service.
    Your JMS proxy can do that by just doing a "Assign <whom>{$body/text()}</whom>" to a variable (lets call it 'reqHello')
    Now your JMS proxy should actually call the Hello service and since your JMS proxy is text and the Hello service is SOAP you cannot just "pass" on to the Hello service in a "Route to". Instead you can do a Service Callout where you can specify your "reqHello" variable as payload and a "respHello" as response variable.
    Now you have the "<whom>Hi jack</whom>" in the response variable and since the JMS response needs to be text format you can "extract" the text value into the body variable of the JMS proxy (use "replace /* in body with $respHello/text()" - replace node contents)
    The actual Hello service is a simple "SOAP" based Proxy Service. Add a pipeline and add a stage in the reponse pipeline. Do a ...
    Assign fn:concat("Hi ",$body/whom/text()) to $whomVar
    Replace whom in body with $whomVar (replace node contents)

  • OSB 11g - poll JMS topic on OAS 10.1.2

    Hi everybody,
    We are going to create OSB 11g proxy service that will poll JMS topic located on Oracle Application Server 10.1.2. I think that the first step is to set up foreign JMS server, connection factory and destinations in the Weblogic server, am I right?
    I've never set up that before and l looking for any guides on how to set up OAS 10.1.2 topic as foreign destination in Weblogic 10.3.3.
    Any help will be appreciated
    Best regards,
    Dmitry

    Ok, finally I found this guide http://www.oracle.com/technetwork/middleware/bam/technote-bam-connectingoc4jjms-129297.pdf and set up foreign JMS server, connection factory and topic. These foreign JMS objects are included in weblogic JNDI tree, and I could successfully deploy OSB Proxy Service that is intended to poll foreign JMS topic. The following error appeared in the weblogic server log file after deployment:
    <Aug 24, 2010 1:21:44 PM MSD> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: RequestEJB-4249293316140669267--703a
    3e3e.12aa2c85115.-7fcd is unable to connect to the JMS destination: jms.oc4jUDC_IDENTITY_TOPIC. The Error was:
    [EJB:011014]The Message-Driven EJB failed while creating a JMS Connection. The error was:
    javax.jms.JMSException: Unable to create a connection to "/0.0.0.0:12,601" as user "null".
    Linked exception: java.net.ConnectException: Connection refused.
    javax.jms.JMSException: Unable to create a connection to "/0.0.0.0:12,601" as user "null".
    at com.evermind.server.jms.JMSUtils.makeJMSException(JMSUtils.java:1898)
    at com.evermind.server.jms.JMSUtils.toJMSException(JMSUtils.java:1914)
    at com.evermind.server.jms.EvermindConnection.<init>(EvermindConnection.java:114)
    at com.evermind.server.jms.EvermindTopicConnection.<init>(EvermindTopicConnection.java:63)
    at com.evermind.server.jms.EvermindTopicConnectionFactory.createTopicConnection(EvermindTopicConnectionFactory.java:91)
    at com.evermind.server.jms.EvermindTopicConnectionFactory.createTopicConnection(EvermindTopicConnectionFactory.java:83)
    at weblogic.ejb.container.internal.JMSConnectionPoller.getConnection(JMSConnectionPoller.java:503)
    at weblogic.ejb.container.internal.JMSConnectionPoller.createJMSConnection(JMSConnectionPoller.java:1969)
    12601 is JMS port of remote OC4J instance, I can connect to this port from weblogic server though telnet.
    I do not know why 0.0.0.0 is printed as IP address, and why user is "null" ..
    Any ideas on that?

  • 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)

  • OSB 11g Proxy Server - Missing SSL Port Configuration

    Hi,
    We are currently upgrading from OSB 10g to 11g.
    In 11g the SSL port for proxy servers ican no longer be configured.
    In sbconsole - System Administration -> Proxy Servers -> Add
    *10g Host-Port Parameters*
    Server Host
    Clear Text Port
    SSL Port
    *11g Host-Port Parameters*
    Server Host
    Clear Text Port
    Note that the SSL configuration is also missing in Eclipse when using the Proxy Server Editor.
    Edited by: 951951 on Aug 9, 2012 6:39 PM

    Weird... It looks like a bug to me... The SSL Port is still on the docs (see bellow)... But I couldn't find on SB Console nor OEPE though...
    http://docs.oracle.com/cd/E23943_01/admin.1111/e15867/configuringandusingservices.htm#CHDCDFFA
    And as far as I can see the variable is still there... On SB Console, on System Administration click on Find & Replace... On the box "Find in variable type" chose "Proxy Server SSL Port" click on Find and you'll see that is still there (default value -1), and you can even do the replace if you want...
    Finding and Replacing Environment Values
    http://docs.oracle.com/cd/E23943_01/admin.1111/e15867/customization.htm#i1129122
    I recommend you open a SR with Oracle support...
    Cheers,
    Vlad
    It is considered good etiquette to reward answerers with points (as "helpful" - 5 pts - or "correct" - 10pts)
    https://forums.oracle.com/forums/ann.jspa?annID=893

  • OSB JMS Proxy

    Hi ,
    can i use a Proxy service with out a Business service to write a messge onto a queue.I jus tried a sample on my local and i am able to write a message on to a queue using a proxy service .
    Flow :-
    PS1(http) using publish action invokes -> PS2 (jms uri config)
    I am clue less how this is working.when the PS2 transport has been defined as jms ,how am i able to invoke it from PS1 using publish action?
    My understanding of OSB is ProxyService is for reading message from queue and Business service is for writing or publishing a message onto a queue.
    can some body help me udnerstand how this is working.

    Basically, you're right when it comes to the difference between business and proxy services. Also, you're not the only confused when routing data from http-based proxy to JMS proxy.
    We touched the topic earlier:
    Re: Retry mechanism for HTTP Transport in OSB
    The point is your layout (HTTP PS -> JMS PS) is sound and works even without intermediate business service.

  • Osb 11g transaction handling

    Hi,
    I have a problem with transaction handling in OSB 11g. When I add a report action, error messages disappear.
    The process is the following:
    jms-queue -> proxy-service ->business-service ->EBS webservice.
    In the proxy-service I add an error-handler at node-level. In this error-handler I log the error-message in the server log. In the regular process there is a request and response-pipeline.
    When I add a message on the queue and when the response from EBS is negative, the message is placed on a errorqueue. That's ok.
    When I add a report-action to the error-handler and then I put another message on the queue, the message is disappeared. It is not on the error-queue and not on the normal queue. When I look in the database there is an extra row added.
    I use the default datasource(wlsbjmsrpDataSource).
    I found for example this blog: http://biemond.blogspot.nl/2010/11/global-transactions-and-quality-of.html ; but I can't find an example with writing to a database and a rollback to an errorqueue. The report-action needs it's own transaction.
    In the weblogic console -> datasources -> transaction I unchecked "Keep Connection After Local Transaction" but that didn't work.
    What kind of options is possible?
    Herman

    I cant believe i was answered by the famous Anuj!.
    You were correct. The weird thing, is that in publish actions the QoS is not propagated onto the target of that Publish per se.
    We say this, becouse the Local PS has the Transaction Required = True, ergo the QoS is Exactly Once all along its message flow. It also propagates in the service callout´s and Route Node´s. Thats why we, trying to avoid redundance, didnt specified it in the publish action.
    Thank you very much.
    Regards.
    Mario.

  • When will OSB 11G avaliable ?

    Our client decide to use 11g BPEL manager running on WLS. And we hope can use OSB (currently 10.3) as the proxy of BPEL Service .
    The thing is the BPEL transport n OSB 10.3 seems not support BPEL 11G (the format of Endpoint URI changed in 11G)and we have some asynchronous BPEL processes need to be integrated .
    Any solution for that ?
    Thanks
    Kevin

    You are correct, the BPEL transport in 10.3.x only supports 10.1.3.x BPEL.
    However you can communicate via other adapters, e.g. web service, JMS, etc.
    As an interim use OSB 10.3.1 and use a transport of your choice, Web Service is probably best. The when 11g arrives it is just a matter of changing the business service the resat of the process should remain in tact. Obviously there will be an upgrade exercise for OSB but unless you are facing major performance issues there should be no rush to do this.
    Basically I believe you are looking at the right architecture and shouldn't be swayed because there is no 11g BPEL adapter.
    OSB 11g should be out some time next year, so it is some time away.
    cheers
    James

  • Oracle OSB 11G. Unable to find Oracle Service Bus Configuration Page.

    Hi All,
    Sorry for the apparent silly question but I am studying and learning the product.
    I have the OSB 11G installed and running with a proxy service working and routing requests. The Oracle ESB documentation http://download.oracle.com/docs/cd/E21764_01/doc.1111/e15866/ui_ref.htm#i1327746 at chapter 4.4.2 New Oracle Service Bus Configuration Project Wizard
    Use this wizard to create an Oracle Service Bus configuration project. For configuration options, see Section 4.4.3, "Oracle Service Bus Configuration Page."
    4.4.3 Oracle Service Bus Configuration Page.
    I don't see the configuration page in anywhere in the left pane of the console. Am I missing something? The project creation works fine but I just don't see the configuration Wizard.
    Thanks.
    Regards
    Salvatore Ilardo

    The link which you are referring is for user interface objects in the Oracle Service Bus plug-ins and OSB plug-ins are used with OEPE (Oracle Enterprise Pack for Ecplise) for OSB development. OEPE is the only supported IDE for OSB development as of now.
    Remember, at a time, one and only one Oracle Service Bus Configuration project can be deployed in a OSB domain which may contain desired number of Oracle Service Bus Projects and that's why there is no provision of creating Oracle Service Bus Configuration Project in sbconsole GUI. In IDE, you may create many Oracle Service Bus Configuration Project and that's why it has a Oracle Service Bus Configuration Project Wizard.
    Regards,
    Anuj

  • Report and Alert don't executed in the error handler with a JMS proxy service

    Hi,
    I'm working with OSB 11.1.1.4.0 and I'm facing a problem with the error handler of my JMS proxy service.
    My error handler contains two main elements :
    - a Report action
    - an Alert with a JMS destination defined
    When the business service failed the message remain in the queue. It's the expected behavior.
    The problem is :
    - the report is missing
    - the alert is raised but missing in the JMS destination defined in the Alert setting.
    I've noticed if I add a Reply with Failure or Success, Report and Alert are successfully executed.
    Unfortunately the message don't remain in the JMS queue.
    What can I do in order to have my report/alert done and the JMS transaction rollback in order to keep the message in the queue ?
    I've already met this problem in the past with alsb v3 and my solution was to add Service Callout in the error handler in order to externalize these actions.
    This solution is not convenient and I hope another solution is possible.

    Inventorying workgroups can be difficult, especially when it comes to remote access and network security. Because workgroups are not centrally managed, some of the items discussed in this
    wiki article on preparing your workgroup environment may require you to visit each machine individually.
    For non-domain credentials, you do not use the <systemname>\<user> format, you simply enter the user name. Regarding how to enter the credentials, if you have an account that uses the same username and password on all machines and is an administrator
    on all of those machines, then you can enter that in the All computers credentials page of the wizard. You can also do this if they are different user names. However, if some machines have an account with the same user name, such as Administrator,
    but different passwords on each machine, you will need to use the Manually enter computer names discovery method, and then enter the information for each group or each machine.
    As you can tell, workgroup environments can quickly negate any benefit that the agentless inventory nature of MAP provides.
    Please remember to click "Mark as Answer" on the post that helps you, and to click
    "Unmark as Answer" if a marked post does not actually answer your question. Please
    VOTE as HELPFUL if the post helps you. This can be beneficial to other community members reading the thread.

  • Using OSB 11g with OEPE

    Hi,
    I have downloaded oepe-galileo-all-in-one-11.1.1.5.0.201003170852-win32 stand-alone from http://www.oracle.com/technology/software/products/oepe/oepe_11115.html?rssid=rss_otn_soft. I am planning to install Oracle Service Bus 11.1.1.3.0 on a remote server and use the OEPE IDE in my local system to develop the proxy and business services to deploy on the remote OSB server. My first question is are there any plugins that need to be installed in OEPE 11.1.1.5.0 to use it as the IDE for OSB ? And how do I connect from the IDE to the remote OSB server?
    Or is it a better option to get the OEPE by installing the OSB 11g server and then abandon the installed server and use the OEPE IDE to connect to a remotely installed OSB server? By doing this, will I get all the plugins that I need for the OSB development pre-configured in the OEPE IDE?
    Thanks,
    sathish

    My first question is are there any plugins that need to be installed in OEPE 11.1.1.5.0 to use it as the IDE for OSB ?Yes. While installing the OSB, go to custom options and you should have a choice to install OSB plugins in any pre-existing OEPE. Personally I have not tried this method.
    Or is it a better option to get the OEPE by installing the OSB 11g server and then abandon the installed server and use the OEPE IDE to connect to a remotely installed OSB server?I'm not sure what you meant by "OSB 11g server" but you should use      
    Oracle WebLogic Server 11gR1 (10.3.3) + Coherence + OEPE - Package Installer to get the weblogic bundled with OEPE, then install      Service Bus (11.1.1.3.0)
    on this install. OSB plugins required for OEPE will be installed. Now you can use this OEPE to connect to remote OSB server. This is what I personally prefer.
    By doing this, will I get all the plugins that I need for the OSB development pre-configured in the OEPE IDE?Yes.
    Manoj

  • Using OSB 11g with OEPE 11.1.1.5.0

    Hi,
    I have downloaded oepe-galileo-all-in-one-11.1.1.5.0.201003170852-win32 stand-alone from http://www.oracle.com/technology/software/products/oepe/oepe_11115.html?rssid=rss_otn_soft. I am planning to install Oracle Service Bus 11.1.1.3.0 on a remote server and use the OEPE IDE in my local system to develop the proxy and business services to deploy on the remote OSB server. My first question is are there any plugins that need to be installed in OEPE 11.1.1.5.0 to use it as the IDE for OSB ? And how do I connect from the IDE to the remote OSB server?
    Thanks,
    sathish

    My first question is are there any plugins that need to be installed in OEPE 11.1.1.5.0 to use it as the IDE for OSB ?Yes. While installing the OSB, go to custom options and you should have a choice to install OSB plugins in any pre-existing OEPE. Personally I have not tried this method.
    Or is it a better option to get the OEPE by installing the OSB 11g server and then abandon the installed server and use the OEPE IDE to connect to a remotely installed OSB server?I'm not sure what you meant by "OSB 11g server" but you should use      
    Oracle WebLogic Server 11gR1 (10.3.3) + Coherence + OEPE - Package Installer to get the weblogic bundled with OEPE, then install      Service Bus (11.1.1.3.0)
    on this install. OSB plugins required for OEPE will be installed. Now you can use this OEPE to connect to remote OSB server. This is what I personally prefer.
    By doing this, will I get all the plugins that I need for the OSB development pre-configured in the OEPE IDE?Yes.
    Manoj

  • Deployment issue with SOA - OSB 11g  environment

    Hi,
    We have Dev Environment configured with SOA 11g (11.1.1.4) and OSB 11g (11.1.1.4) on a single weblogic domain. Developed SOA composite app and deployed to the SOA Server. We are exposing our SOA Composite thru OSB ( created osb proxy and business services and accessed soa composite from the client. It s working fine ) layer for the client to access it. The issue here is while deploying it to the production environment (configured OSB and SOA in two separate WL domain) located offshore.
    What i saw from the soa doc is that we need to deploy SOA composite to the SOA Server and OSB Configuration to the OSB Server.
    but the offshore person is asking us to deploy both SOA composite & osb to the same OSB Server as an .ear file.
    Is it possible to deploy both SOA composite & osb to the same osb server ? is there any document on project that involve both soa and osb.
    please guide me how to do the deployment
    I appreciate all your help.
    thanks
    sumesh.j

    I am wondering if could able to solve the problem of deploying both SOA composite & osb to the same osb server. Even I am facing the same problem....
    If you could able to solve the problem then please let us know the steps that you have followed to solve the same.

Maybe you are looking for

  • Problem with INDEX in BSAD

    When this SELECT sentence is executed, it always perform a sequentially index search, dispite there's a suitable index:   SELECT belnr gjahr zuonr blart rebzg shkzg xblnr   budat waers dmbtr wrbtr kunnr hkont buzei   FROM bsad   INTO TABLE ti_factura

  • My serial number is not accepted, how to proceed  (my card says: ActivationCode, should I have a separate serial number?)

    My serial number is not accepted, how to proceed  (my card says: ActivationCode, should I have a separate serial number?)

  • Error "request method not found" in Collaboration?

    Hi, using Collaboration Instant Messaging, after a brief time without chat activity, casts the error popup message "request method not found" After this message, user click “OK” and message close, but from that moment, beginning to have problemas nav

  • Access Public Site

    We now have access to the admin site, but was unsure how to get access to the public site. We looked at a couple other university sites, but could not figure it out. What I am looking for is access to the site that the general public can see like the

  • Render Queue stopped working

    I have done about 50 comps in the past few days when all of a sudden it stops working. I hit render and nothing happens. But it does start rendering and a blank file appears but it's not correct. In fact the render once started never ends. So it's a