Fetching and inserting back to JMS queue

hai,
I want to check which all queues are active......So whenever a queue comes i am putting that in active queue list........so if any case the message cannot be sent then that queue will be active.....so i want to find the number of attempts made by the queue......i have set one variable in the queue object......so whenever one attempt is made i have to fetch the object from the queue, increment the variable and put it back to the queue......So how can i do that.......Is there any other alternate way to find the number of attempts made by a queue....Please help
Sreenivasan

As far as I know, your only options is to do as the exception you cut-and-pasted below
          states:
          "To force this participation, set the enableTwoPhaseCommit property on the corresponding
          JDBCTxDataSourceproperty, to true. Pool = ejbPool"
          The "enableTwoPhaseCommit" property has definite drawbacks
          see the javadoc and/or documentation for configuring
          a "JDBCTxDataSource".
          This problem is specific to non-XA resources in general, not JMS (which is an XA resource),
          you may wish to get more info by posting to the transaction newsgroup.
          Tom
          Manoj Bansal wrote:
          > using a container managed transactions can we achieve sending a message to the JMS
          > queue and updating DB as part of single transaction with the data base driver not
          > supporting XA. If yes what all configurations setting I need to do. I tried to achieve
          > this using 2PC but I am getting the error that "javax.transaction.xa.XAException:
          > JDBC driver does not support XA, hence cannot be a participant in two-phase commit.
          > To force this participation, set the enableTwoPhaseCommit property on the corresponding
          > JDBCTxDataSourceproperty, to true. Pool = ejbPool".
          

Similar Messages

  • Unable to insert messages in JMS QUEUE

    Hi All,
    I am facing an issue while inserting messages in JMS queue.
    The JMS Queue is on another weblogic server and now i created a bpel process which has a jms adapter to insert messages inthe jms queue.I am deploying the Bpel in my server which does not have this particular JMS queue.
    I am unable to insert the messages into the JMS queue present on another weblogic server. where as i am able to insert messages if the queue is present on my server.
    Can you please let me know if its possible to put messages into a queue on remote server from local server.
    Thanks in advance.

    Most probably it seems like an issue of security. Please try to establish cross domain trust between these two Weblogic server domains. For more information refer to http://download.oracle.com/docs/cd/E1284001/wls/docs103/secmanage/domain.html#wp1175687_

  • SQL SERVER BULK FETCH AND INSERT/UPDATE?

    Hi All,
           I am currently working with C and SQL Server 2012. My requirement is to Bulk fetch the records and Insert/Update the same in the other table with some  business logic?
           How do i do this?
           Thanks in Advance.
    Regards
    Yogesh.B

    > is there a possibility that I can do a bulk fetch and place it in an array, even inside a stored procedure ?
    You can use Temporary tables or Table variables and have them indexes as well
    >After I have processed my records, tell me a way that I will NOT go, RECORD by RECORD basis, even inside a stored procedure ?
    As i said earlier, you can perform UPDATE these temporary tables or table variables and finally INSERT/ UPDATE your base table
    >Arrays are used just to minimize the traffic between the server and the program area. They are used for efficient processing.
    In your case you will first have to populate the array (Using some of your queries from the server) which means you will first load the arrary, do some updates, and then send them back to server therefore
    network engagement
    So I just gave you some thoughts I feel could be useful for your implementation, like we say, there are many ways so pick the one that works good for you in the long run with good scalability
    Good Luck! Please Mark This As Answer if it solved your issue. Please Vote This As Helpful if it helps to solve your issue

  • Making DB updates and sending message to JMS queue enclosed in a single transaction

              using a container managed transactions can we achieve sending a message to the JMS
              queue and updating DB as part of single transaction with the data base driver not
              supporting XA. If yes what all configurations setting I need to do. I tried to achieve
              this using 2PC but I am getting the error that "javax.transaction.xa.XAException:
              JDBC driver does not support XA, hence cannot be a participant in two-phase commit.
              To force this participation, set the enableTwoPhaseCommit property on the corresponding
              JDBCTxDataSourceproperty, to true. Pool = ejbPool".
              

    As far as I know, your only options is to do as the exception you cut-and-pasted below
              states:
              "To force this participation, set the enableTwoPhaseCommit property on the corresponding
              JDBCTxDataSourceproperty, to true. Pool = ejbPool"
              The "enableTwoPhaseCommit" property has definite drawbacks
              see the javadoc and/or documentation for configuring
              a "JDBCTxDataSource".
              This problem is specific to non-XA resources in general, not JMS (which is an XA resource),
              you may wish to get more info by posting to the transaction newsgroup.
              Tom
              Manoj Bansal wrote:
              > using a container managed transactions can we achieve sending a message to the JMS
              > queue and updating DB as part of single transaction with the data base driver not
              > supporting XA. If yes what all configurations setting I need to do. I tried to achieve
              > this using 2PC but I am getting the error that "javax.transaction.xa.XAException:
              > JDBC driver does not support XA, hence cannot be a participant in two-phase commit.
              > To force this participation, set the enableTwoPhaseCommit property on the corresponding
              > JDBCTxDataSourceproperty, to true. Pool = ejbPool".
              

  • Retrieve XML,store as a file, update data in XML and insert back. Possible?

    Hello,
    I have XML records stored in the DB. Now I want to retrieve XML as a file to my local system, edit the data values for some element nodes, child nodes and re-insert that xml in its earlier place..
    Is this possible?
    If yes, can u pls tell me how to do it.
    I tried using WebDAV, but I guess it’s not working in my machine.
    Also, I don’t want to update the xml record directly using UPDATE command. I want to retrieve as a file, store in a local system, and then update that entry in the DB.
    Thanks in advance, and your help is appreciated.
    Regards,
    Athar

    Which database version are you using
    What is the output of lsnrctl status
    The easiest way to do this will be use WebDAV or FTP. However if not getting the data out as a file will require some coding work. Getting it back is fairly easy, use a bfile

  • Reading Opaque data from jms queue  and decoded  in java embedding

    Hi ,
    Objective:Fetch text message from queue and print it from java embedding in BPEL
    I am fetching text message from a jms queue using JMS adapter in BPEL.Then converting the opaque data(Base64 binary)to string using java embedding.My build got successful but I am getting runtime error at the time of deployment.
    I have added fabric-runtime.jar file into SCA-INF\lib folder as well as project library directory.
    <extensionActivity>
    <bpelx:exec name="Java_Embedding1" version="1.5" language="java">
    <bpelx:exec import="java.io.*"/>
    <bpelx:exec import="oracle.soa.common.util.Base64Decoder"/>
    <![CDATA[//Write your java code below e.g.        
         System.out.println("Hello, World");       
    //   String input = ((Element)getVariableData("Receive1_Consume_Message_InputVariable")).getTextContent();              
      // String inputName = (String)getVariableData("input");     
      String input = (String)getVariableData("Receive1_Consume_Message_InputVariable");            
    //Receive1_Consume_Message_InputVariable.opaque          
          System.out.println("input:"+input);          
          addAuditTrailEntry(input);           
          Base64Decoder Decoder = new Base64Decoder();             
         try {            
          String decoded = Base64Decoder.decode(input);            
          setVariableData("Variable_opaque_decoded",decoded);            
          addAuditTrailEntry(decoded);           
    catch(UnsupportedEncodingException uee)
    uee.printStackTrace();
    }]]>
    </bpelx:exec>
    </extensionActivity>
    Error:
    Error deploying archive sca_JMSToDBInsert_rev1.0.jar to partition "default" on server AdminServer [http://localhost:7001]
    HTTP error code returned [500]
    Error message from server:
    There was an error deploying the composite on AdminServer: Error occurred during deployment of component: BPELProcess1 to service engine: implementation.bpel, for composite: JMSToDBInsert: ORABPEL-05250
    Error deploying BPEL suitcase.
    error while attempting to deploy the BPEL component file "C:\Oracle\Middleware\user_projects\domains\soa_domain\servers\AdminServer\dc\soa_0fb06e23-bac3-4753-aae9-0fc4b54b4dd1"; the exception reported is: java.lang.RuntimeException: failed to compile execlets of BPELProcess1
    This error contained an exception thrown by the underlying deployment module.
    Verify the exception trace in the log (with logging level set to debug mode).
    Check server log for more details.
    Error deploying archive sca_JMSToDBInsert_rev1.0.jar to partition "default" on server AdminServer [http://localhost:7001]
    #### Deployment incomplete. ####
    Error deploying archive file:/C:/SOA Suite/SOA_POC/Client2JMSapps/Client2JMSapps/JMSToDBInsert/deploy/sca_JMSToDBInsert_rev1.0.jar
    (oracle.tip.tools.ide.fabric.deploy.common.SOARemoteDeployer)
    Could you guys please help me regarding this?
    Thanks & Regards,
    Souvik
    Edited by: Souvik Pal on Apr 16, 2012 9:40 PM

    You probably want to try the SOA Suite forum for OSB questions.
    SOA Suite
    There is an excellent book also:
    http://jeffdavies.org/
    The documentation goes over the fundamentals, but the book will be better for step by step examples.

  • Advantages and Disadvantages of JMS Queue over Fabric

    HI,
    I want to know both the advantages and disadvantages of using JMS queue over the default Fabric queue in B2B adapter.
    Is it ok if I configure all my inbound and outbound transactions across all the trading partners to communicate with their respective SOA composite via the default JMS Queues(B2B_IN_QUEUE and B2B_OUT_QUEUE)?
    Please advise.
    Thanks in advance.
    Regards,
    Monica

    Hi Monica,
    But the size of the payload which I am using is unpredictable, it can differ from 1 MB to 40MB in future.This is not a problem. B2B can handle MB's of file if server has enough resources.
    all other payloads greater than 3MB, it is getting faulted with the message:
    "SAX Exception in translator. SAX Exception raised while trying to SAX Parse InputStream . Please make sure that the xml data is valid."Please remember that when B2B will find a large payload then it will write the large payload into the "Large Payload Directory" (defined in Administration--> Configuration) and pass it's reference to the middleware. So at middleware, you will not receive the actual payload but you will receive it's reference. Using File adapter sync read option, you may read the large file from "Large Payload Directory" at SOA layer.
    If you are using PS5 (11.1.1.6) then you will see that for large payload, B2B passes the JMS header LARGE_PAYLOAD to the back-end so in your composite, you may build logic around this. If this header (LARGE_PAYLOAD) is not coming at SOA layer then payload will be available in the body and if it is populated then payload will be available in the "Large Payload Directory" and it's reference will be available in the message body.
    Regards,
    Anuj

  • Oracle AQ to JMS Queue which is on Oracle Application server

    Hi,
    I am using Oracle Streams AQ Oracle database 10g
    and i have a JMS Queue on oracle Application server.
    how i can Propagate message from Oracle AQ (AQ$_JMS_TEXT_MESSAGE)Queue to JMS Queue. ?
    Thanks,
    Satnani

    Hi Justin,
    Thanks for Reply, but in my case my JMS queue is on Oracle Application Server.
    and i want to propagate message from AQ to JMS queue.
    and none of the document is available to describe how to send message from oracle database AQ to JMS queue which is on application server.
    please help
    Thanks,
    Satnani

  • How can  SAP XI JMS Queue communicate with external JMS Queue

    Dear All ,
    we are Implementing SAP XI . Sender business system is splitting a file into small files and keeping them into JMS queues we want SAP XI JMS queue should communicate directly with the sender JMS queue (which is an external JMS queue) without any Adapter ,programming efforts and Middleware.
    Can you please tell me is it possible?

    I dont think it is possible directly without adapter

  • Populating Database records to WLS JMS queue

    Hi All,
    Please suggest which is the performance effective approach in populating WLS JMS queue from the database tables?
    As I have to produce millions of records from the DB into the JMS queue and assuming using DB adapter and retreiving bulky data is a long running process.
    Please suggest whether I can write a pl/sql stored proc and populate the WLS JMS queue? or is there any other most optimistic approach to transfer data from db into WLS JMS queue?
    Thanks,
    Sudha

    Thanks Eric for the quick reply. Also, going through the other forum:
    Re: Publish message from Oracle database PL/SQL to a remote WLS JMS queue
    Just want to know which one would be performance effective one in the below whether using Java stored Procedures or populating AQ and WLS Messagin bridge?
    1) Java Stored Procedure can use JMS APIs to publish messages to WLS JMS destinations. JMS standard API jar file and WLS JMS client jars that you use need to be loaded into database.
    2) From PL/SQL, you can publish message to AQ using AQ PL/SQL APIs, then configure WLS Messaging Bridge to forward messages from AQ to WLS JMS.

  • Data retrieval from JMS queue using single SOA composite in a clustered env

    Hi,
    I have following situation:
    1) A requester SOA composite (Composite1)is reading data from a File
    2) Mediator is routing data received from Composite1 and writing in a JMS queue.
    3) A provider composite (Composite2) is reading from the JMS queue.
    Both Composite1 and Composite2 is deployed in a clustered environment.
    Problem is Composite2 is not able to read data sequentially from JMS Queue sometime (for example out of 30000 transactions its failing once). Here it's a queue and only one producer and only one consumer is there.
    What may cause this issue? I thought a single producer and single consumer on a queue will guarantee FIFO retrieval . Could you please advise where may be the gap?
    Thanks
    Edited by: user1054373 on Sep 18, 2012 11:29 PM

    Hi,
    I thought a single producer and single consumer on a queue will guarantee FIFO retrieval Java Message Service Specification does not guarantee ordered message delivery when applications use distributed queues...
    Using Weblogic Message Unit-of-Order may solve your issue...
    http://docs.oracle.com/cd/E23943_01/web.1111/e13727/uoo.htm#JMSPG389
    Hope this helps...
    Cheers,
    Vlad

  • Connect from Weblogic JMS queue to SAP WAS JMS queue

    Hi,
    I am trying to setup a WLS 8.1 messaging bridge between a weblogic JMS queue and a SAP WAS JMS queue. I have configured a queue on both Weblogic and SAP WAS and I have set up the messaging bridge and bridge destintations in weblogic. However when weblogic tries to get the SAP initial context factory it fails with the error below.
    I have added the SAP Client jars to the weblogic system classpath, and in the weblogic startup script but it still fails. Has anyone connected from an external JMS queue to a SAP WAS JMS queue that could provide me with some guidence?
    <10/08/2006 08:23:45 AM WST> <Warning> <Connector> <BEA-190032> << Weblogic Mess
    aging Bridge Adapter (XA)_eis/jms/WLSConnectionFactoryJNDIXA > ResourceAllocatio
    nException of javax.resource.ResourceException: ConnectionFactory: failed to get
    initial context (InitialContextFactory =com.sap.engine.services.jndi.InitialCon
    textFactoryImpl, url = ux0800:55304, user name = username) on createManagedConnectio
    n.>
    Thanks
    Warren

    Stoyan,
    Thanks for that.
    My problem ended up being a classpath problem. I referenced the directory of the SAP jars in the weblogic start up script. When I changed this to reference each jar individually it worked.
    I have a new issue now which may have something to do with security. The trace suggests it is logging on as the guest user, even though I entered my username and password in the Messaging bridge.
    #1.5#000E7FED310600A30000008A0000302D00041AA399E338B4#1155189870559#com.sap.jms##com.sap.jms.server.sessioncontainer.InboundBus instance=BWIP#J2EE_GUEST#0####165536f0283611db8903000e7fed3106#SAPEngine_Application_Thread[impl:3]_126##0#0#Error##Plain###com.sap.jms.server.exception.JMSServerInvalidDestinationException: No destination with ID=0 found.
            at com.sap.jms.server.service.impl.RegistryServiceImpl.getDestinationContext(RegistryServiceImpl.java:404)
            at com.sap.jms.server.sessioncontainer.InboundBus.getDestinationContext(InboundBus.java:98)
            at com.sap.jms.server.sessioncontainer.InboundBus.process(InboundBus.java:153)
            at com.sap.jms.server.sessioncontainer.InboundBus.enqueue(InboundBus.java:116)
            at com.sap.jms.server.sessioncontainer.SessionContainer.receiveFromDispatcher(SessionContainer.java:63)
            at com.sap.jms.server.routingcontainer.RoutingContainer.receiveFromDispatcher(RoutingContainer.java:447)
            at com.sap.jms.server.JMSServerContainer.dispatchRequest(JMSServerContainer.java:635)
            at com.sap.jms.server.JMSServerFrame.request(JMSServerFrame.java:536)
            at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
            at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
            at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
            at java.security.AccessController.doPrivileged(Native Method)
            at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
            at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Warren

  • Create jms queue xml data server

    Hi,
    What's the difference between jms queue and jms queue xml data servers and how to create jms queue xml data server.
    Thanks.

    Hello,
    JMS messages can principally be processed by Oracle Data Integrator in two formats:
    - JMS Messages: containers for rows of data, handled through JMS Queue/JMS Topic Technologies. With JMS Queue/JMS Topic technologies, each JMS destination is defined similarly to a flat file datastore. Each message in the destination is a record in the datastore.
    - XML Messages: containers for XML files, handled through JMS XML Queue/JMS XML Topic Technologies. With JMS XML Queue/JMS XML Topic technologies, each messages payload contains a complete XML data structure. This structure is mapped into a relational schema (XML Schema) which appears as a model. This use the Oracle DI Driver for XML (see the driver documentation in Oracle DI documentation).
    Find below a step by step creation process for such a destination:
    1. Data Server
    To create a JMS XML Queue data server, you declare a simple JNDI connection. The only JMS XML specific information is added to the URL. This information defines the XML file format.
    The JNDI URL should be : <JMS_RESOURCE>?d=<DTD_FILE>&f=<XML_FILE>&s=<SCHEMA>&JMS_DESTINATION=<JMS_DESTINATION_NAME>
    - JMS_RESOURCE: JNDI resource corresponding to your JMS queue that will contain the XML payload. You would specify this URL if you were managing normal JMS messages.
    - DTD_FILE: path to a DTD file that describes the XML structure. Mandatory if the parameter XML_FILE is omitted.
    - XML_FILE: path to the XML file with a structure similar to the expected XML messages. Mandatory if the DTD_FILE parameter is omitted.
    - SCHEMA: schema name that will contain the XML structure. This value must match the one set for the physical schema attached to this data server. This parameter is mandatory.
    - JMS_DESTINATION_NAME: name of the JMS queue or topic. This parameter is mandatory.
    2. Schema
    Creation is straightforward: In the Schema (Schema) and Schema (Work Schema), enter the name of the <SCHEMA> defined in the data server JNDI URL.
    3. Model
    Use standard reverse-engineering. As the Oracle DI Driver for XML is used the XML structure will be reversed as a relational structure.
    Regards,
    - FX

  • Updating and inserting on Long Raw column

    Hi All,
    My source table contains LONG RAW column in XX databse. I have to fetch the data from this table in YY Databse using DB link and insert into same structured table. The problem is, i can not access the LONG RAW data for some rows which the size exceeding above 32k.
    My requirement is, i have to fetch and insert or update the record(Source and target table structure is same and dtabase is different).
    Please suggest the best way of handle this problem.
    Please let me know if you need more information.
    Thanks
    Ram
    Edited by: ram on Oct 19, 2008 2:11 PM
    Edited by: ram on Oct 19, 2008 2:12 PM

    We using the procedure to insert and update. Procedure will called to update or insert only one record at a time from XX databse to YY database.
    We are not using SQL * PLUS for this operation.
    Thanks
    Ram

  • Resubmit payloads from JMS Queue

    Hi,
    We have a requirement to resubmit our claims which are faulted and captured in error(JMS queue) using HumanTask..
    Can anyone please provide me any inputs?
    Thanks a lot..
    Regards,
    Sri

    First, there is no need to use human task. You can put retry to Error Queue to retry by itself.
    Second, if you still need human intervention, you can pause the consumption of queue, once queue gets filled up with error messages, you can resume the consumption to let the compsite to pick the messages.
    Regards,
    Richa

Maybe you are looking for