Parsing sensor data (out of JMS queue)

Hi,
I´m currently trying to implement sort of a monitor using sensors.
I´ve managed to set up a JMS queue that is used by a sensor and I have casted the message i got to a com.evermind.server.jms.EvermindTextMessage. However, all I can get out of this is a string representation of the sensor action data in XML. It looks somehow like this:
<actionData xmlns="http://xmlns.oracle.com/bpel/sensor"><header><sensor sensorName="activation" classn
ame="oracle.tip.pc.services.reports.dca.agents.BpelActivitySensorAgent" kind="activity" target="setSwitchCondition"> <activityConfig evalTime="activation"/> </sensor><instanceId>29501</instanceId><midTierInstance>mxs2018:9700</midTierInstance><processName>SensorTest</proces
sName><processRevision>1.0</processRevision><domain>default</domain><timestamp>2006-02-13T12:56:55.453+01:00</timestamp>
</header><payload><activityData><activityType>assign</activityType><evalPoint>activation</evalPoint></activityData></pay
load></actionData>
So now, I´m searching for a simple solution to put this structure back in an java-object so I can easily get the different parts I need. I´ve found a schema dealing with sensors under OraBPELPM\integration\orabpel\system\xmllib\Sensor.xsd and have translated this via schemac to classes, but there seems to be no class for the element "actionData", as this is also not mentioned in the schemas.
I´m currently using my own parser/handler (SAX), but this is no satisfying solution.
I´ve searched almost everywhere, but it seems, noone has ever dealed with this.
Any suggestions or ideas?
Thnx in advance,
Max
Message was edited by:
mxs

Hi Clemens,
schemac has indeed included this one (SensorAction.xsd) by itself - all classes are generated correctly (including SensorAction/SensorActionProperty/etc). Nevertheless it´s somehow useless, because those sensor schemas seem to be a definition of the sensor itself rather than the data it produces.
As you can see in the schemas, there is no definition for either a "header", nor a "actionData" or "activityData". I could (for example) extract the node "sensor" and feed it to the proper class - same goes for inner node "activityConfig". But all those other values (providing most of the information i need) don´t have a matching structure in the schemas.
Before I used JMS, I have tried a custom sensor class that implements com.oracle.bpel.sensor.DataPublisher. In this case I´m getting the information I need from com.oracle.bpel.sensor.schemas.ITSensorActionData and can extract the header and payload from there. This leads me to the conclusion that there is (somewhere) another XSD describing the sensor data - or did I get something completely wrong?
Greetings,
Max

Similar Messages

  • 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

  • Creating data server for JMS Queues in ODI

    hi,
    I am trying to create data server for JMS Queues in ODI.
    I am getting following error:
    java.sql.SQLException: Cannot load connection class because of underlying exception: 'javax.jms.JMSException: Cannot find the Connection Factory (jms/QueueConnectionFactory) in JNDI'.
    To implement this, I am giving following parameters:
    JNDI driver : com.evermind.server.rmi.RMIInitialContextFactory
    JNDI url : ormi://localhost/default
    JNDI resource : jms/QueueConnectionFactory
    Please help.
    Thanks,
    Monika

    Hi,
    according to docs
    http://docs.oracle.com/cd/E23943_01/integrate.1111/e12644/hypersonic_sql.htm#ODIKM590
    i see
    JDBC Driver: org.hsqldb.jdbcDriver
    JDBC URL: jdbc:hsqldb:hsql://<host>:<port>
    could you modify
    JDBC Driver : org.hsqldb.jdbc.JDBCDriver
    JDBC Url : jdbc:hsqldb:hsql://localhost
    according to docs?
    Thanks

  • Problem parsing TextMessage from a JMS queue

    I'm attempting to read and parse a TextMessage from a JMS queue. The message is in an XML format and I'm trying to parse it using "oraext:parseXML". If I hardcode a value such as:
    <copy>
    <from expression="'&lt;ns:person xmlns:ns=&quot;urn:mynamespace&quot;>&lt;ns:personname>&lt;ns:first>bob&lt;/ns:first>&lt;/ns:personname>&lt;/ns:person>'"/>
    <to variable="tempString"/>
    </copy>
    I can then parse "tempString" just fine. If I read the TextMessage in as a string and attempt the same thing, I constantly get
    "XPath expression failed to execute. An error occurs while processing the XPath expression; the expression is oraext:parseXML(bpws:getVariableData('tempString')). The XPath expression failed to execute; the reason was: internal xpath error. Check the detailed root cause described in the exception message text and verify that the XPath query is correct. "
    If I look at "tempString" in both scenarios (hardcoding the value and reading it in) the contents are basically the same, when reading it in via the JMS queue it does seem to put in line breaks after the elements to format it more like an XML document. For example, coming in from JMS the string looks like:
    <ns:person>
    <ns:personname>
    <ns:first>bob</ns:first>
    </ns:personname>
    </ns:person>
    But hardcoding the value it looks like:
    <ns:person><ns:personname><ns:first>bob</ns:first></ns:personname></ns:person>
    Should this affect anything?
    Thanks.

    Thanks for the reply. I'm not sure I understand the difference between XML and an XML string. XML is just a well-formed text string, right?
    Anyway, your suggestion didn't work for me. The "ora:getContentAsString" call you suggested apparently strips away the XML and gives just the contents. For example, given the XML:
    <ns:person>
    <ns:personname>
    <ns:first>bob</ns:first>
    <ns:last>smith</ns:last>
    </ns:personname>
    </ns:person>
    "ora:getContentAsString" yields: "bobsmith", not the data structure.
    Again, thanks for the reply.

  • 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

  • BAM plans stacking up when JMS queue input source is blocked

    I have a BAM installation that receives data from a JMS queue through Enterprise Message Source connections, using Enterprise Link plans to manipulate the data and insert/update it into data objects. I also use BAM alerts to trigger the plans to run every 20 minutes to check for data to pull from the queues.
    The data is coming in from several batch processes that insert records to an external Oracle table, that uses triggers to push the data into the JMS queues. Some of these batch processes are currently written poorly so that they run for long periods of time and tie up the Oracle table.
    The BAM plans are running every 20 minutes, as expected. However, if one of these batch processes is running and it ties up the source table, it also ties up the queue table. The BAM alerts continue to kick off the plans every 20 minutes. But, if the resources are being blocked, the Enterprise Message Source doesn't appear to be able to connect with the JMS queue table, and the plan hangs up - continuing to "run" while waiting for the connection. If the batch jobs run for some length of time, the next iteration of the plans is kicked off, queuing up behind the still-running previous iteration. Then 20 minutes later, the next execution of the plan kicks off and also hangs. And so on until all the database connections are being tied up.
    Other than process improvements to the batch jobs to prevent/minimize locking of the source table (which is being done), are there any settings that would allow the BAM alert-based execution of the plans to "time out" if a connection cannot be established in a matter of minutes, or a way to prevent the same plan from initiating if a copy of that plan is already executing? I would like to prevent having the executions of the plans "queue up" and cause even more database contention.

    the script for the triger where missing some parameters this resolve the insert problems.
    create or replace trigger employee AFTER INSERT OR Update ON employee
    FOR each row
    declare
    xml_complete varchar2(1000);
    v_enqueue_options dbms_aq.enqueue_options_t;
    v_message_properties dbms_aq.message_properties_t;
    v_msgid raw(16);
    temp sys.aq$_jms_text_message;
    v_recipients dbms_aq.aq$_recipient_list_t;
    Begin
    temp:=sys.aq$_jms_text_message.construct;
    v_recipients(1) := sys.aq$_agent('bamclient',null,0);
    *# v_recipient is case sensitive, this is the name of the external user who should pick up this AQ*
    message from the bus. (should match on BAM side)
    v_message_properties.recipient_list := v_recipients;
    xml_complete :=
    '<?xml version="1.0"?><row>' ||
    '<EMPNO>' || :new.EMPNO || '</EMPNO>' ||
    '<ENAME>' || :new.ENAME || '</ENAME>' ||
    '<JOB>' || :new.JOB || '</JOB>' ||
    '<MGR>' || :new.MGR || '</MGR>' ||
    '<HIREDATE>' || :new.HIREDATE || '</HIREDATE>' ||
    '<SAL>' || :new.SAL || '</SAL>' ||
    '<COMM>' || :new.COMM || '</COMM>' ||
    Tech Note: Oracle BAM: Integration with Oracle AQ / Database
    TechNote_BAM_AQ_Configuration.doc
    Page 4 of 9
    Nov 6, 06 (version 10.1.3)
    Document version (5)
    Oracle confidential, All rights reserved
    '<DEPTNO>' || :new.DEPTNO || '</DEPTNO>' ||
    '</row>' ;
    temp.set_text(xml_complete);
    dbms_aq.enqueue(queue_name => 'bam_ttq',
    enqueue_options => v_enqueue_options,
    message_properties => v_message_properties,
    payload => temp,
    msgid => v_msgid );
    commit;
    end ;

  • Help needed on JMS queues

    I am using Soa Suite 10.1.35 and trying to make a ESB integration work.
    The requirement is I have to de-queue some data from a JMS queue and invoke a Oracle Pl/SQL Api(DB adapter) using the data in an ESB project.
    I want it part of a single transaction, i.e. if the call to oracle API(db adapter ) fails( say db is down or api is invalid), i want the queue de-queue transaction to be rolled back as well.
    I have made the routing service as synchronous. I have marked istransacted ="true" connection factory in oc4j-ra.xml file and auto_commit =>false for the Queue table, queue creation.
    Still if the DB transaction fails the queue is not rolled back.
    Any help or pointers will be greatly appreciated.
    Please let me know if you require any information.
    Regards,
    Punit

    I tried compling servlet, but it is raising error
    that coul not find package javax.servletWhat I did not mention... you need to add those JARs in the Classpath explicitly. You will find them in %TOMCAT_HOME%\common\lib. You atleast need to add servlet-api.jar to your Classpath. :)

  • OSB 10.3 JMS queue problem: JMSCorrelationID is null

    Hi everybody,
    I am new to OSB/ALSB, and need some help regarding JMS message handling. I am trying to put some input data into a JMS queue( say, reqQueue) and to get the response from another JMS queue(say resQueue). My architecture is:
    OSB proxy service->OSB business service->JMS queue(reqQueue)->BPEL process(through JMS adapter) ->JMS queue(resQueue)->OSB business service->OSB proxy service.
    I have used JMSCorrelationID for response correlation. but my problem is that when I am trying to test the service from proxy service, I am getting the JMSCorrelationId as null in BPEL process as well as in the weblogic server JMS log, and as I am getting the CorrelationId as null, I am unable to correlate the response, so I am not getting any response.
    This is urgent, please help me as soon as possible as possible.
    Thanks in advance.
    Joy

    Sovled it..
    OSB 10.3 JMS queue problem: JMSCorrelationID is null

  • Parsing Options Data from Files

    With the help of the folks on this discussion board, I now have a directory filled with daily options data for all traded options. What I would like to do now is parse the data out so that I have one file with all the options data for one or two stocks.
    Now I have a file named in the YYYYMMDD.txt format for every trading day. The data in the file looks like this:
    AAF,A,,,,,5.65,0,30.0,6.25,6.5,334,2008
    AAG,A,,,,,1.71,4,35.0,1.7,1.79,2049,2008
    I need to pull information out of that file for specific symbols, and concatenate the date, which can be derived from the file name, at the end of each line.
    So far I have a script that goes through the files and parses the information, but I do not know how to insert the information into a blank document and add the date. Here is what I have so far.
    set fPath to "path:to:directory:"
    tell application "Finder" to set tList to name of every file of folder fPath
    repeat with i in tList
    do shell script "grep ,PGH, " & quoted form of POSIX path of fPath & i
    end repeat
    Thank you in advance.

    Thanks for the quick reply.
    Here is an exert from an example file that I included in my original post. Let me describe the information a little bit, and I think you will see where I am going with grep.
    AAF,A,,,,,5.65,0,30.0,6.25,6.5,334,2008
    AAG,A,,,,,1.71,4,35.0,1.7,1.79,2049,2008
    The first data is the options symbol, and the second is the underlying stock symbol for the option. I have only included two rows but the text files include hundreds of thousands of rows. The first two rows that I am using in my example are for Agilent Technologies whose stock symbol is "A".
    So if I use the UNIX command GREP and do , stock symbol , plus the file I can pull out the options information I am interested in for just one stock. In the case of my original post, I was trying to get information for PGH.
    For example,
    grep ,PGH, /path/to/file/20080102.txt
    returns:
    PGHAC,PGH,,,,,2.7,0,15.0,2.8,3.1,81,2008
    PGHAD,PGH,,,,,0.05,16,20.0,0.0,0.05,5995,2008
    PGHAV,PGH,,,,,5.5,0,12.5,5.2,5.6,0,2008
    PGHAW,PGH,,,,,0.6,96,17.5,0.45,0.7,3659,2008
    PGHAX,PGH,,,,,0.1,0,22.5,0.0,0.05,1476,2008
    PGHBC,PGH,,,,,,0,15.0,2.8,3.1,0,2008
    PGHBD,PGH,,,,,,0,20.0,0.0,0.1,0,2008
    PGHBV,PGH,,,,,,0,12.5,5.3,5.6,0,2008
    PGHBW,PGH,,,,,0.55,0,17.5,0.6,0.75,22,2008
    PGHBX,PGH,,,,,,0,22.5,0.0,0.05,0,2008
    PGHDC,PGH,,,,,2.7,0,15.0,2.8,3.1,376,2008
    PGHDD,PGH,,,,,0.15,8,20.0,0.1,0.15,3048,2008
    PGHDV,PGH,,,,,5.6,0,12.5,5.3,5.6,29,2008
    PGHDW,PGH,,,,,0.95,26,17.5,0.85,1.0,2485,2008
    PGHDX,PGH,,,,,0.15,0,22.5,0.0,0.1,224,2008
    PGHGC,PGH,,,,,2.9,10,15.0,2.8,3.2,133,2008
    PGHGD,PGH,,,,,0.3,16,20.0,0.2,0.3,563,2008
    PGHGV,PGH,,,,,5.6,0,12.5,5.2,5.6,10,2008
    PGHGW,PGH,,,,,1.05,7,17.5,0.95,1.15,1347,2008
    PGHGX,PGH,,,,,,0,22.5,0.0,0.1,0,2008
    PGHMC,PGH,,,,,0.05,0,15.0,0.0,0.05,915,2008
    PGHMD,PGH,,,,,2.1,25,20.0,1.95,2.2,1072,2008
    PGHMV,PGH,,,,,0.03,0,12.5,0.0,0.05,30,2008
    PGHMW,PGH,,,,,0.1,5,17.5,0.1,0.25,4430,2008
    PGHMX,PGH,,,,,4.6,0,22.5,4.4,4.8,164,2008
    PGHNC,PGH,,,,,0.1,0,15.0,0.05,0.1,30,2008
    PGHND,PGH,,,,,2.55,0,20.0,2.15,2.4,35,2008
    PGHNV,PGH,,,,,,0,12.5,0.0,0.05,0,2008
    PGHNW,PGH,,,,,0.4,5,17.5,0.35,0.5,38,2008
    PGHNX,PGH,,,,,,0,22.5,4.6,5.0,0,2008
    PGHPC,PGH,,,,,0.2,10,15.0,0.15,0.25,431,2008
    PGHPD,PGH,,,,,2.6,35,20.0,2.55,2.8,326,2008
    PGHPV,PGH,,,,,0.1,0,12.5,0.0,0.1,115,2008
    PGHPW,PGH,,,,,0.85,0,17.5,0.75,0.9,1431,2008
    PGHPX,PGH,,,,,4.5,0,22.5,4.9,5.2,91,2008
    PGHSC,PGH,,,,,0.5,0,15.0,0.35,0.5,57,2008
    PGHSD,PGH,,,,,3.3,0,20.0,3.0,3.4,527,2008
    PGHSV,PGH,,,,,0.15,30,12.5,0.05,0.15,0,2008
    PGHSW,PGH,,,,,1.45,1,17.5,1.3,1.45,664,2008
    PGHSX,PGH,,,,,5.3,0,22.5,5.3,5.7,117,2008
    Which is the options data for one stock on one day. But I want the options data for one stock for everyday. I hope this makes sense.

  • Send hashtable to JMS queue

    Hi
    How can i send hashtable to JMS queue?
    Thanks

    Hi Robert,
    I checked my system staus and found PI_BASIS as a component.
    I got to know that sending data to the JMS queue is not a big deal. All one needs to do from the CRM side is to call a stub behind which sits the Java code. Once this stub has been called, the Java code has to take care of it.
    Best regards.

  • Configuration for JMS Adapter Sensor action and JMS Queue sensor action..!!

    Hi,
    Id like my BPEL process to send an XML message to JMS on Websphere,I was able to do this through a JMS adapter.But I would more like to add sensors into my process which would really do the same thing - send an XML message to JMS Q.
    Now I understand that there are two ways to do this,JMS Queue and JMS Adapter - thorugh bpel sensor action.
    I am able to use JMS Queue and it works fine , but adds its own xml tags to the message,Is there any way I could send only my xml payload as a message to the queue??
    Also could any1 tell me what is the configuration for JMS Adapter sensor action?
    Any suggestions how do I go about it??

    Hey Anirudh,
    Thanx for the response :-)
    All these hold good when I have an AQ adaptor right,But the thing is I want to send a message to a 'JMS' queue with out actually using an adapter configuration wizard and everythng..So I resolved to JMS queue Sensor action..Heres the xml snippet from the sensorAction.xml files which is generated..
    <actions targetNamespace="http://xmlns.oracle.com/Test_JMS_Logging" xmlns="http://xmlns.oracle.com/bpel/sensor" xmlns:tns="http://xmlns.oracle.com/Test_JMS_Logging" xmlns:pc="http://xmlns.oracle.com/bpel/sensor">
    <action name="JMS_LogEntry" publishName="" publishType="JMSQueue" enabled="true" filter="" publishTarget="jms/L_Queue">
    <property name="JMSConnectionFactory">jms/L_QueueCF</property>
    <sensorName>ActivitySensor_JMS</sensorName>
    </action>
    </actions>
    This works grt and adds messages to the queue..But adds its own header info according to the sensor.xsd loacted at the Oracle_home\bpel\system\xmllib\ folder.
    Right now the XML message added to the Queue is:-
    <actionData xmlns="http://xmlns.oracle.com/bpel/sensor">
    <header>
    <sensor sensorName="ActivitySensor_JMS" classname="oracle.tip.pc.services.reports.dca.agents.BpelActivitySensorAgent" kind="activity" target="AddLEntr
    y" xmlns:pc="http://xmlns.oracle.com/bpel/sensor" xmlns:ns2="http://www.ulrhome.com/2008/10/L_Entry" xmlns:tns="http://xmlns.oracle.com/Test_JMS">
    <activityConfig evalTime="completion">
    <variable outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema" target="$WriteL_Produce_Message_InputVariable/L_Entry/ns2:L_Entry/ns2:LCName"/>
    </activityConfig>
    </sensor>
    <instanceId>950016</instanceId>
    <processName>Test_JMS</processName>
    <processRevision>v2009_04_15__40833</processRevision>
    <domain>default</domain>
    <timestamp>2009-04-15T11:21:23.596-04:00</timestamp>
    <midTierInstance>app01.ulrhome.com:9700</midTierInstance>
    </header>
    <payload>
    <activityData>
    <activityType>scope</activityType>
    <evalPoint>completion</evalPoint>
    <durationInSeconds>0.011</durationInSeconds>
    <duration>PT0.011S</duration>
    </activityData>
    <variableData>
    <dataType>12</dataType>
    <data>
    <ns0:LCName xmlns:ns0="LC_Test1http://www.ulrhome.com/2008/10/L_Entry">LC_Test1</ns0:LCName>
    </data>
    <queryName/>
    <target>$WriteL_Produce_Message_InputVariable/L_Entry/ns2:L_Entry/ns2:LCName</target>
    <updaterName>AddL_Entry</updaterName>
    <updaterType>scope</updaterType>
    </variableData>
    </payload>
    </actionData>
    My requirement is that I need to add a sensor to the BPEL process which posts 'Only my payload message to the JMS queue'..
    What I would want the message in the Queue to be is : -
    <data>
    <ns0:LCName xmlns:ns0="LC_Test1http://www.ulrhome.com/2008/10/L_Entry">LC_Test1</ns0:LCName>
    </data>
    Also while creating a Sensor action I get another option as JMS Adaptor,I am not sure of what value to type in this wizard..Heres what I keyed in..M sure this is not right..Cos it dosnt work :-)
    <action name="SensorAction_JMS" publishName="" publishType="JMSAdapter" enabled="true" filter="" publishTarget="jms/LoggingQueue">
    <property name="JMSConnectionName">Log</property>
    </action>
    </actions>
    Could any 1 tel me what values are the right values..And does JMS Adapter mean that I have to create a JMS Apator in the project and give that connection name as a Value..
    I am not finding sufficiant Documentation for 'JMS Adapter' so M clueless and right now any help will be appriciated :-)
    Regards,
    Akshatha.

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

  • ODI 11g : JMS Queue XML Data Server creation

    Hi Everybody,
    I am facing a problem while i am trying to create a JMS Queue XML data server in ODI 11g. I have
    the following details of the queue.
    QueueManager=xxx;
    TransportType=1;
    HostName=ab.cde.fe.com;Port=77777;
    Channel=CLIENT.TO.xxx1
    destination name : SU.BH.RAJY.OTI.UPDATE_ITEM_RESPONSE.01
    user : xyz
    password : 123
    I have sussefully created an jms datasouce in weblogic name 'eis/jms/abc' and also I have successfully
    retrived the xml message from queue in BPEL
    (using a jms adapter where
    JMS Provider : Third Party,
    Jms Provider Jndi Name -eis/jms/abc,
    Operation name : consume_message,
    destinamtion name is queue:///SU.BH.RAJY.OTI.UPDATE_ITEM_RESPONSE.01?targetClient=1).
    But the new reqirement is to retive the xml data in ODI using "JMS Queue XML data server".I have tried
    several ways(reading from internet) but failed to configure physical dataserver and reverse the xml message.
    Also failed to understand properly the oracle post (http://docs.oracle.com/cd/E21764_01/integrate.1111/e12644/jms_xml.htm#CHDFCFBI).
    Speically this portion "JNDI URL: <JMS_RESOURCE>?d=<DTD_FILE>&s=<SCHEMA>&JMS_DESTINATION=<JMS_DESTINATION_NAME>.".
    What will be the "JMS_RESOURCE" in my case.
    How can I configure JMS Queue XML?
    Please help!
    Note : I don't have the XML message structure of the Queue(also DTD file). So , I have to reverse it.
    Thanks & Regards,
    Subhra
    Message was edited by: SubhrajyotiKundu

    Hi Everybody,
    I am facing a problem while i am trying to create a JMS Queue XML data server in ODI 11g. I have
    the following details of the queue.
    QueueManager=xxx;
    TransportType=1;
    HostName=ab.cde.fe.com;Port=77777;
    Channel=CLIENT.TO.xxx1
    destination name : SU.BH.RAJY.OTI.UPDATE_ITEM_RESPONSE.01
    user : xyz
    password : 123
    I have sussefully created an jms datasouce in weblogic name 'eis/jms/abc' and also I have successfully
    retrived the xml message from queue in BPEL
    (using a jms adapter where
    JMS Provider : Third Party,
    Jms Provider Jndi Name -eis/jms/abc,
    Operation name : consume_message,
    destinamtion name is queue:///SU.BH.RAJY.OTI.UPDATE_ITEM_RESPONSE.01?targetClient=1).
    But the new reqirement is to retive the xml data in ODI using "JMS Queue XML data server".I have tried
    several ways(reading from internet) but failed to configure physical dataserver and reverse the xml message.
    Also failed to understand properly the oracle post (http://docs.oracle.com/cd/E21764_01/integrate.1111/e12644/jms_xml.htm#CHDFCFBI).
    Speically this portion "JNDI URL: <JMS_RESOURCE>?d=<DTD_FILE>&s=<SCHEMA>&JMS_DESTINATION=<JMS_DESTINATION_NAME>.".
    What will be the "JMS_RESOURCE" in my case.
    How can I configure JMS Queue XML?
    Please help!
    Note : I don't have the XML message structure of the Queue(also DTD file). So , I have to reverse it.
    Thanks & Regards,
    Subhra
    Message was edited by: SubhrajyotiKundu

  • How to remove header data from JMS Queue while sending by jms adapter

    Hi.
    I have a problem regarding the MQ-series JMS adapter.
    When writing the file the JMS adaptor putting  some additional tags.
    Actually we are converting idoc-xml to flat file by using ABAP mapping which is available in SAP document. We are using JMS Receiver adapter, whiel sending flat file to JMS QUEUE,  it is displaying some extra xml tags. I think this is the header data available in IDoc XML. Can any body help me in removing header data.
    There must be some way for XI's JMS adaptor to not include these information.
    My example looks like this:
    RFH Ø  
    ¸MQSTR
    ¸ " is junk that I really dont need in the file.
    How can you setup the JMS adaptor not to put in these information?
    Thanks & Regards,
    Madhusudhan

    not related

  • How can I config to create an out-of-box jms queue

    Hi All,
    I am new to WebLogic Server and I need to create an out-of-box jms queue for my project, which means instead of creating and configuring the queue at the administration console, I'd like to program and change some configuration files to achieve it. Can someone give me some advice or point me to some samples?
    Thank you,
    Yang

    Hi,
    Use WLST snippet as shown below to create a basic JMS config OOTB.
    import sys
    from java.lang import System
    connect('weblogic','weblogic','t3://localhost:7001')
    edit()
    startEdit()
    servermb=getMBean("Servers/myserver")
    if servermb is None:
        print 'Server not found'
        stopExecution("cannot find the server myserver")
    else:
        jmsserver1mb = create('MyJMSServer1','JMSServer')
        jmsserver1mb.addTarget(servermb)
        jmsserver2mb = create('MyJMSServer2','JMSServer')
        jmsserver2mb.addTarget(servermb)
        jmsMySystemResource = create("MyJmsSystemResource","JMSSystemResource")
        jmsMySystemResource.addTarget(servermb)
        subDep1mb = jmsMySystemResource.createSubDeployment('DeployToJMSServer1')
        subDep1mb.addTarget(jmsserver1mb)
        subDep2mb = jmsMySystemResource.createSubDeployment('DeployToJMSServer2')
        subDep2mb.addTarget(jmsserver2mb)
        theJMSResource = jmsMySystemResource.getJMSResource()
        jmsqueue1 = theJMSResource.createQueue('MyQueue1')
        jmsqueue1.setJNDIName('wlst.mgmt.jms.MyQueue1')
        jmsqueue1.setSubDeploymentName('DeployToJMSServer1')
        jmsqueue2 = theJMSResource.createQueue('MyQueue2')
        jmsqueue2.setJNDIName('wlst.mgmt.jms.MyQueue2')
        jmsqueue2.setSubDeploymentName('DeployToJMSServer2')
        jmstopic1 = theJMSResource.createQueue('MyTopic1')
        jmstopic1.setJNDIName('wlst.mgmt.jms.MyTopic1')
        jmstopic1.setSubDeploymentName('DeployToJMSServer1')
        jmstopic2 = theJMSResource.createQueue('MyTopic2')
        jmstopic2.setJNDIName('wlst.mgmt.jms.MyTopic2')
        jmstopic2.setSubDeploymentName('DeployToJMSServer2')
    try:
        save()
        activate(block="true")
    except:
        print "Error while trying to save and/or activate!!!"
        dumpStack()Hope this helps,
    Kats

Maybe you are looking for

  • Pavilion dv6-3130tx Blue Screen (BSOD) on adding RAM to second slot

    Hi there, I own a HP Pavilion dv6-3130tx with total of 3gb of RAM, one 1GB chip and one 2 GB chip. Recently I have been getting a lot of system crashes/freezes and occasional Blue Screen of Death (BSOD) with a variety of error messages. On contacting

  • Attaching a viewpoint to a mobile object (ctnd)

    I am trying to attach the user's viewpoint to a moving object in Java 3D. I failed until now to have my code working. Here is a piece of code that exhibits the problem. I used the HelloWorld3D that is in the Java 3D examples from Sun. I inserted an a

  • How can I edit calendar reminders that still pop up from old .mac account?

    Can anyone help me?  I have 3 repeating, pop-up calendar items from my old.mac calendar that can not be edited in any way.  I can't get to them to delete them.  The calendar items do not show up in any other calendar, including icloud.

  • Passing parameters within the ctrl:method/

    I am using the method tag of the controller namespace. Dose it have a child which will allow you to page/pageEvent parameters? <ctrl:method class="SomeClass" method="someMethod"> <..../> </ctrl:method> If this is possible, where can I review the docu

  • HT1222 I want to cancel the software

    Dear sir I want to cancel my ipad 3 software uptade after he turned of, and he is no working as I put him in itunes. Best regards