Skip to main content

Oracle SOA JMS Adapter TOPIC configuration with SOA based Subscriber's

Hello Everyone,

Hope you enjoy blogging!!!!!

Today i am going to explain how we can use TOPIC in oracle SOA where we will publish message into Queue from one service and other services will consume message from topic.

Steps to create JMS TOPIC:


1. Click on Services Menu
2. Click on Messaging Sub-menu
3. Click on JMS Modules.
4. Click on SoaJmsModule.
5. Click new
6. Select Distributed Topic anc click next
            1. Enter Name "ProjTopic"
            2. Enter JNDI Name "jms/ProjTopic".
            3. Click on Advanced Target
            4. Select SubDeployments "SoaSubDeployments" from dorp down.
            5. Select Server "SoaJmsServer1" "SoaJmsServer2" from server list
            6. Click Finish
            7. Click on "ProjTopic"
8. Go to Configuration >> General
            9. Set Forwarding Policy to "Partitioned" (this property will make sure not replicate message into all soa cluster nodes).
10. Click Save
















Steps to create JMS TOPIC Connection Factory:

1. Click on Services Menu

2. Click on Messaging Sub-menu
3. Click on JMS Modules.
4. Click on SoaJmsModule.
5.Click New

6.Select Connection Factory and click next
            1. Enter Name "ProjTopicCF"
            2. Enter JNDI Name "jms/ProjTopicCF".
            3. Click on next by keep default values.
            4. Click on Advanced Target
            5. Select SubDeployments "SoaSubDeployments" from drop down.
            6. Click Finish
            7. Click on "ProjTopicCF".
            8. Go to Configuration >> Client
            9. Select Client ID Policy as Un-restricted.
            10. Subscription Sharing Policy as shareable.





Steps to update JMS adapter:

1. Click on Deployments.

2. Click on "JmsAdapter".
3. Click on configuration tab
4. Click on outbound connection pool tab.
5. Click New
6. Click on "oracle.tip.adapter.jms.IJmsConnectionFactory" and click next
7. Enter JNDI Name "eis/jms/ProjTopic"
8. Click on created JNDI Name and enter ConnectionFactoryLocation location as "jms/ProjTopicCF" and hit ENTER.
9. Enter "true" in "IsTopic" row & press enter button
10. Set FactoryProperties column value as ClientID=ProjTopic
11. Click Save
12. Go back to "Deployments".
13. Select check box in front of "JmsAdapter".
14. Click on update button.
15. Click next & finish.



SOA Development:
  • Create three SOA Services,
    • PublishTopicMessage
    • ReadTopicMessage1
    • ReadTopicMessage2
  • Inside ReadTopicMessage1 and ReadTopicMessage2, Open TopicConsume.JCA file and add below property in JCA file.
  • <property name="DurableSubscriber" value="SubsriberName"/>
  • Deploy both service and publish some message into JMS Topc.
Weblogic Console Topic Message checking steps:
  • Login into weblogic console.
  • Go to newly created JMS topic.
  • You will see your published messages here with list of subscribers.



Comments

Post a Comment

Popular posts from this blog

Solution for BPM standard dashboard & activity guide not working in Oracle SOA 12.2.1.0 C

As earlier i publish a post about different issue of Oracle BPM, After some oracle support i got to fixed them. Issue Blog Here... Issue 3:BPM 12.2.1 process workspace activity guide not working. if you have a normal BPM Process, then this is the issue. In order to have data populated in "Activity Guide" firstly you should create a BPMN Guided Business Process. Below you can find the documentation about activity guide and how to create a Guided Business Process: https://docs.oracle.com/middleware/1221/bpm/bpm-develop/GUID-F765955D-90A5-48D4-8D2A-2F01FBB539E3.htm#BPMPD901 And here is specified: " A Guided Business Process is modeled as an activity guide that is based on a business process. The Activity Guide includes a set of Milestones. A milestone is a contained set of tasks that the end user has to complete. A milestone is complete when the user successfully runs a specific set of tasks in the milestone. " And in the below chapters you will find the

Oracle SOA 12C rest adapter with Custom HTTP headers

Most existing web applications are connected through web services, which are commonly known as SOAP services. More and more users are relying on mobile devices for communication, and they’re looking for lighter ways to access enterprise information on the go. REST services are the answer for the mobile device platform, because they get rapid responses and fast access to data. Oracle SOA Suite 12 c  provides a complete set of service infrastructure components for designing, deploying, and managing composite applications. Oracle SOA Suite 12 c  enables services to be created, managed, and orchestrated into composite applications and business processes. Some time we have need to send HTTP headers in REST service, In OSB we use header component and add what ever is needed but in oracle SOA 12C it's little bit different. Let see how we can do it. Create one SOA Application. Create one SOA Sample project inside SOA Application. Go to composite and drag drop REST adapt

Dynamic Routing in OSB 12C

Dynamic Routing in OSB cab be used when the BusinessService endpoint required to be determine at runtime in message flow. Consider a scenario where OSB has to route the incoming requests to 2 different services based on the CustomerType element value sent in the payload. So create a XQuery resource with the following contents. Observe that we are using the absolute path of business service in configuration as required by dynamic routing. Following is the XML schema that we use:>>  Customer.xsd <?xml version="1.0" encoding="windows-1252" ?> <xsd:schema targetNamespace="http://xmlns.oracle.com/schema/Customer" xmlns:xsd="http://www.w3.org/2001/XMLSchema"             xmlns:ns1="http://xmlns.oracle.com/schema/Customer">   <xsd:complexType name="Customer">     <xsd:sequence>       <xsd:element name="CustomerId" type="xsd:string"/>       <xsd:elemen