Phantom JMS Queues with WLST

Hello,
I just started using WLST, and I've written a rather long script that creates
a JMS server and some queues, among other things.
I based my code on the JMS server creation example, and it works perfectly as
long as the JMS server doesn't already exist. If it does, I get output like this:
JMS Server already exists.
[Caching Stub]Proxy for mydomain:Name=myjs,Type=JMSServer
*** JMSQueue with name 'myAuditQ' has been created successfully.
JMS destination is already parented
Setting Type
Setting JNDIName
Traceback (innermost last):
File "<input>", line 1, in ?
File "loaddm.py", line 16, in doit
File "setupServer.py", line 274, in ?
File "<iostream>", line 145, in set
WLSTException: 'Error occured while performing set : Unknown Error. Use dumpStack()
to view the error stack trace'
The line I put the *** by is interesting because the queue that was just created
already exists, yet the create() does not throw any exceptions.
Once this happens, I can do something like the following to add to the confusion:
wls:/mydomain/config> cd('JMSQueue/myAuditQ')
wls:/mydomain/config/JMSQueue/myAuditQ> ls()
Traceback (innermost last):
File "<input>", line 1, in ?
File "<iostream>", line 176, in ls
WLSTException: 'Error occured while performing ls : Could not find an MBean
instance while doing getAttribute. Use dumpStack() to view the error stack trace'
wls:/mydomain/config/JMSQueue/myAuditQ> dumpStack()
javax.management.InstanceNotFoundException: mydomain:Name=myAuditQ,Type=JMSQueue
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.j
ava:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
at weblogic.management.internal.RemoteMBeanServerImpl_812_WLStub.getMBea
nInfo(Unknown Source)
at weblogic.management.scripting.InformationHandler.getAllAttributes(Inf
ormationHandler.java:754)
at weblogic.management.scripting.InformationHandler.la(InformationHandle
r.java:538)
at weblogic.management.scripting.InformationHandler.ls(InformationHandle
r.java:146)
at weblogic.management.scripting.WLScriptContext.ls(WLScriptContext.java
:387)
The code that generates this error is like this:
try:
r=create(cNode+'js','JMSServer')
except Exception:
print "JMS Server already exists."
r=getTarget('JMSServer/'+cNode+'js')
if clustered:
target=getTarget('Server/'+cNode)
try:
r.addTarget(target)
except Exception:
print "JMS server is already targeted."
print r
for dest,attr in jms.items():
try:
q=create(dest+suffix,'JMS'+attr['Type'])
except Exception:
print "JMS Destination already exists."
q=
getTarget('JMS'+attr['Type']+'/'+dest+suffix)
try:
q.setParent(r)
except Exception:
print "JMS destination is already parented"
cd('JMS'+attr['Type']+'/'+dest+suffix)
for att, val in attr.items():
print "Setting "+att
if att != 'Type':
set(att,val)
cd('/')

This seems to be a larger problem that I initially thought. Ideally
weblogic server will not allow you to create an MBean with same name
since it will collide with the unique object name for that MBean in the
MBeanServer. From your posting I did not understand if you were able to
create an MBean with the same name and did not get a
InstanceAlreadyExists Exception. If you did get it then seems like there
is a problem in the way the server is persisting the config.xml. There
shouldn't be duplicate entries. Please file a support case [email protected].
Thanks,
-satya
Justin Dossey wrote:
(top replying because of the long post)
It looks like this was caused by Weblogic 8 allowing WLST to create invalid domain
configuration (config.xml). I opened config.xml up in an editor and found that
even though I had been using Try: create(foo)/ except Exception: (getTarget(foo)),
there were (many) duplicate entries for MBeans in config.xml. For instance, one
Server was in there four times. Almost every Server had four or more SSL entries
in config.xml. There were many unparented JMS Queues defined, as well-- this
is what I believe caused my problem.
So why does the try create actually create duplicate when an instance already
exists?
"Justin Dossey" <[email protected]> wrote:
Hello,
I just started using WLST, and I've written a rather long script that
creates
a JMS server and some queues, among other things.
I based my code on the JMS server creation example, and it works perfectly
as
long as the JMS server doesn't already exist. If it does, I get output
like this:
JMS Server already exists.
[Caching Stub]Proxy for mydomain:Name=myjs,Type=JMSServer
*** JMSQueue with name 'myAuditQ' has been created successfully.
JMS destination is already parented
Setting Type
Setting JNDIName
Traceback (innermost last):
File "<input>", line 1, in ?
File "loaddm.py", line 16, in doit
File "setupServer.py", line 274, in ?
File "<iostream>", line 145, in set
WLSTException: 'Error occured while performing set : Unknown Error. Use
dumpStack()
to view the error stack trace'
The line I put the *** by is interesting because the queue that was just
created
already exists, yet the create() does not throw any exceptions.
Once this happens, I can do something like the following to add to the
confusion:
wls:/mydomain/config> cd('JMSQueue/myAuditQ')
wls:/mydomain/config/JMSQueue/myAuditQ> ls()
Traceback (innermost last):
File "<input>", line 1, in ?
File "<iostream>", line 176, in ls
WLSTException: 'Error occured while performing ls : Could not find
an MBean
instance while doing getAttribute. Use dumpStack() to view the error
stack trace'
wls:/mydomain/config/JMSQueue/myAuditQ> dumpStack()
javax.management.InstanceNotFoundException: mydomain:Name=myAuditQ,Type=JMSQueue
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.j
ava:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
at weblogic.management.internal.RemoteMBeanServerImpl_812_WLStub.getMBea
nInfo(Unknown Source)
at weblogic.management.scripting.InformationHandler.getAllAttributes(Inf
ormationHandler.java:754)
at weblogic.management.scripting.InformationHandler.la(InformationHandle
r.java:538)
at weblogic.management.scripting.InformationHandler.ls(InformationHandle
r.java:146)
at weblogic.management.scripting.WLScriptContext.ls(WLScriptContext.java
:387)
The code that generates this error is like this:
try:
r=create(cNode+'js','JMSServer')
except Exception:
print "JMS Server already exists."
r=getTarget('JMSServer/'+cNode+'js')
if clustered:
target=getTarget('Server/'+cNode)
try:
r.addTarget(target)
except Exception:
print "JMS server is already targeted."
print r
for dest,attr in jms.items():
try:
q=create(dest+suffix,'JMS'+attr['Type'])
except Exception:
print "JMS Destination already exists."
q=
getTarget('JMS'+attr['Type']+'/'+dest+suffix)
try:
q.setParent(r)
except Exception:
print "JMS destination is already parented"
cd('JMS'+attr['Type']+'/'+dest+suffix)
for att, val in attr.items():
print "Setting "+att
if att != 'Type':
set(att,val)
cd('/')

Similar Messages

  • Process not writing to JMS queue with non-xa data source

    I have a process reading from a JMS-AQ with non XA, but it does not seem to be performing a commit and writing to the queue. If I use XA all the way ut works, but I don't get the desired error handling which I have built. Anything obvious I am missing? 11.1.1.5 SOA

    Hi,
    Under Weblogic JDBC Datasources select the datasource and then select Transaction tab there you can find Use XA datasource interface.
    and In DB adapter ... go to Configuration Tab ---Outbound Connection Pool--- Unhide the pool group -Select JNDI name ( e.g eis/DB/local ) ---enter the JDBC datasource created earlier in weblogic JDBC datasource against xADataSourceName..
    Now Click on Transaction tab & select Transaction Support: as XA Transaction .
    Regards,
    Abhinav Gupta

  • Synchronization of JMS queue with backup instance

    Hello,
              I have the following problem: there are two machines in active - passive
              configuration. Both those machines serve as JMS servers in two environments.
              What I want to do is to keep a backup of JMS queue from the productive
              environment in the backup one, so in case of a disaster in the productive
              environment the backup one will stand up and will start processing the waiting
              messages. In order to do this I need to keep an up-to-date (or almous up to
              date, I will propably have to accept that some of the messages will be lost)
              copy of JMS queue.
              Have you ever worked on such a problem? Maybe you can suggest some solution?
              Best regards,
              Dawid Duda

    Hi,
              Thanks for informations, but it is not exactly what I need.
              In my case I need to keep a backup of the queue in a separate location, to be
              able to start processing the data in case if the first one was i.e. burned.
              Therefore I was thinking about something like duplicating the database store
              under the queue (using database tools) in on-line mode to be able to start
              another instance in case of problems with the first one. Do you think such
              aproach would work?
              Best regards,
              dave
              Tom Barnes wrote:
              > Hi,
              >
              > Search the newsgroup and docs for keyword "migration". Automated "whole server" migration is available in 9.0, and automated "service" level migration is slated to be available in 9.5. (8.1 provides manual/scriptable service-level migration.) Also, depending on your use case, it might be that distributed destinations, bridges, server-side-store-and-forward (9.0+), or client side store-and-forward (9.2+) would fit your needs.
              >
              > http://edocs.bea.com/wls/docs81/jms/intro.html#jms_features
              >
              > http://edocs.bea.com/wls/docs92/jms_admin/intro.html#jms_features
              >
              > http://dev2dev.bea.com/pub/a/2004/05/ClusteredJMS.html (service-level migration paper)
              >
              > Tom

  • Problem Connecting to JMS queue with C sharp client

    Hi there,
    I am trying to connect to a JMS queue using a C# client but i have a problem trying to connect. The problem comes in when i run the C# script a dialog box appears requesting a T3TransportFactory.cs which i do not have on the client. and when i close it i get an exception on
    IContext context = ContextFactory.CreateContext(paramMap);
    Exception - Failed to connect using URL <t3://10.103.130.18:7001>
    StackTrace - at WebLogic.Messaging.Physical.T3TransportFactory.CreateT3Transport(IDictionary`2 paramMap) in c:\weblogic\dev\src1032\modules\weblogic-jms-dotnetclient\jmsimpl\src\WebLogic\Messaging\Physical\T3TransportFactory.cs:line 226
    at WebLogic.Messaging.Physical.ContextPhysical.CreateContext(IDictionary`2 paramMap) in c:\weblogic\dev\src1032\modules\weblogic-jms-dotnetclient\jmsimpl\src\WebLogic\Messaging\Physical\ContextPhysical.cs:line 83
    at WebLogic.Messaging.Context.CreateContext(IDictionary`2 paramMap) in c:\weblogic\dev\src1032\modules\weblogic-jms-dotnetclient\jmsimpl\src\WebLogic\Messaging\Context.cs:line 56
    The stacktrace indicates that it is looking for a T3TransportFactory.cs file in that particular path on the client (This is my speculation) but this directory path does not exist on the client machine with the c# code.
    I got a WebLogic.Messaging.dll referenced in my c# project and the ip/port numbers are correct (we know this cause we tried a java client that connected successfully)
    Can anyone assist me on this issue?

    The issue might be the dll file you are referring to. Did you use the dll from the weblogic installation folder (BEA_HOME/modules/com.bea.weblogic.jms.dotnetclient_1.X.X.X).
    Refer - http://docs.oracle.com/cd/E15051_01/wls/docs103/jms_dotnet/install.html#wp1075258
    Hope this helps.
    Thanks,
    Patrick

  • Error watching JMS queues with JMSUtils: java.lang.NoSuchMethodError: main

    Hi. I'm trying to use the command line utility JMSUtils to see if I have configured correctly a new queue in oc4j server but when I try to use execute it following the instructions I have found on the net it doesn't appear to be in the oc4j.jar
    I found that class in oc4jclient.jar but without a main method.
    I use the 10g Release 3 (10.1.3.0.0) for Microsoft Windows
    The instruction I execute is:
    C:\product\10.1.3\OracleAS_1\j2ee\home>java -classpath c:\ora10g\j2ee\home\oc4j.
    jar;c:\ora10g\j2ee\home\lib\jms.jar com.evermind.server.jms.JMSUtils -username admin -password welcome destinations
    Exception in thread "main" java.lang.NoClassDefFoundError: com/evermind/server/j
    ms/JMSUtils
    Mensaje editado por:
    user515269
    Mensaje editado por:
    user515269

    When I try to execute the JMSUtils class that's inside
    oc4j-internal.jar appears the same exception I had
    executing the class that's inside oc4jclient.jar:
    NoSuchMethodError: main
    Anybody knows why this class doesn't have a main method
    or how can I execute it?Jose:
    It seems that the command line utility JMSUtils is removed from oc4j 10.1.3, although the class is still packaged into some oc4j jar. According to the documentation, "In this release, OracleAS JMS Utility functionality is available as attributes and operations on various MBeans, replacing the deprecated command line interface of previous releases.".
    Please see the section "OracleAS JMS Utility" of the book "Oracle® Containers for J2EE
    Services Guide, 10g Release 3 (10.1.3) for Windows or UNIX, B14427-01", which is available on line.
    Hope this helps.

  • WLST: how to move messages from a JMS queue to another queue

    Hi all,
    I'm looking for an example for moving messages from a JMS queue to another JMS queue using WLST.
    Do you have an example about that or a piece of code as starting point ?
    Thanks in advance
    ferp

    http://www.javamonamour.org/2011/09/wlst-move-jms-messages.html

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

  • 10 million messages in one jms-queue

    Hi all,
              we want to put about 10 million jms-messages in a jms-queue with a jdbc
              persistent store on oracle database.
              Does anyone of you made experiences with that much messages in one
              queue? Are there any known limitations concerning the number of
              messages, e.g. according managing overhead, etc?
              Thanks for any comment,
              Klaas

    The $ is not a valid character for an element NAME per W3C standards. In short you can only use letters, numbers and the underscore ( _ )..
    You need to correct this message / data and reprocess the message.
    Setup an Error Queue so these messages get thrown some where that will not cause issues in your system. Then use error handling in something like AIA to report back to your support staff that a bad message was encountered, needs to be fixed and reprocessed.
    You will see that if you do a google search for how to escape a dollar sign in xpath, there are no good results....
    Hope that helps!
    -Luke

  • Remove JMS Queue

              Hi!
              I've managed to create JMS Queues by using JMSServerMBean and JMSQueueMBean.
              I'm trying to remove a JMS queue with the method :
              removeDestination(JMSDestinationMBean)
              but the JMS queue is not removed from the config.xml.
              Any suggestions?
              queueName = My Queue Name
              queueJNDI = My Queue JNDI Name
              JMSServerMBean jmsServerMB =
              (JMSServerMBean)mBeanHome_.getMBean(JMSServer,"JMSServer",SERVER);
              JMSQueueMBean jmsQueueMB =
              (JMSQueueMBean)mBeanHome_.findOrCreateAdminMBean
              (queueName,"JMSQueue",SERVER,jmsServerMB);
              jmsQueueMB.setJNDIName(queueJNDI);
              jmsServerMB.removeDestination(jmsQueueMB);
              -Ami
              

    Hi,
    Even i have a similar kind of requirement where in, i want to clear the JMS Queue Message programmatically, on certain condition.
    i am using Spring JMS. The JMS Queue has a listener. In the listener we want to clear the Queue contents based upon the condition.
    If anybody has any idea about this, please reply back.
    Thanks in Advance.
    Manjunath.

  • JMS Queue monitoring

    Hi everyone,
    is there any way to monitor a jms queue with its contained messages ? i'm talking about a tool like the jmx console in jboss - the JMS Adapter and JMS Notification in the Visual Admin only provide some properties.
    Any suggestions ?

    Hi,
    In short what you want (sending email in case message has stayed too long time in the queue), is NOT possible directly. That's not a standard feature by the JMS spec.   
    What is possible is the is so-called dead messages, once the acknowledgment fails the predefined number of times then the messages will be redirected to a special queue. From there the messages can be exported by telnet.
    Check SAP note 777930 for more info. Btw, it might be a good idea to get familiar with that note, otherwise if the external server let's say always throws an exception while processing the message, it will be moved to this special queue and unless someone issues the appropriate telnet commands, nobody will understand about this.
    However if you disable this  feature, that will mean that the message will be delivered endlessly, causing CPU load. Not nice if you have doubts in your external listeners.                                                                               
    Now about the queue monitoring :
    You could create manually a periodic task (EJB timers in J2EE 1.4 which is covered in the prerelease of the next server version, or if you are using Netweaver 04s or 04s than perhaps java.util.Timer) that will periodically open a JMS browser, check the  messages in the queue, if they have stayed too long time (>100 seconds for example ?) or if the queue is too big (>100 messages) you can send manually the email alert that something has went wrong. By usage of the JAVA API that should be simple
    Another thing you can do is that inside your external listeners and the onMessage method, you could check manually the number of times the message is redelivered, if it is above some threshold (i.e . if it is 3, that means the SAP server has delivered the message 3 times , since the listener have rejected it 2 times already),then you can send the email via the standard java API. The delivery count can be retrieved by using the standard optional property JMSXDeliveryCount from the message.                                                      
    HTH
    Peter

  • JMS Queue - lookup error

    Hi All,
    I have created a queue 'JMSTestQueue' through the Visual Administrator/ JMS Provider.
    I have also created an MDB in which the ejb-j2ee-engine.xml contains a parameter as
    <destination-name>JMSTestQueue</destination-name>
    Now, when I try to deploy my MDB I get an exception saying
    that
    javax.resource.spi.UnavailableException: The destination JMSTestQueue cannot be looked up. Last attempt performed : jms_vendor_queues_global/JMSTestQueue.
    Now here I can't understand that why the container is making a lookup in the path jms_vendor_queues_global.
    Because the JMS queue I have created has the JNDI path as
    jmsqueues/default/JMSTestQueue
    Another twist to the tale is that when I use the default JMS queue by the name 'JobQueue', then the MDB is deployed succesfully. This means the 'lookup' is successful.
    How do I solve this issue? I want to use a new JMS Queue with my MDB.
    I'll be really grateful, if someone can help me out.
    Thanks and Regards,
    Gagan Parhar.

    Hi All,
    I have created a queue 'JMSTestQueue' through the Visual Administrator/ JMS Provider.
    I have also created an MDB in which the ejb-j2ee-engine.xml contains a parameter as
    <destination-name>JMSTestQueue</destination-name>
    Now, when I try to deploy my MDB I get an exception saying
    that
    javax.resource.spi.UnavailableException: The destination JMSTestQueue cannot be looked up. Last attempt performed : jms_vendor_queues_global/JMSTestQueue.
    Now here I can't understand that why the container is making a lookup in the path jms_vendor_queues_global.
    Because the JMS queue I have created has the JNDI path as
    jmsqueues/default/JMSTestQueue
    Another twist to the tale is that when I use the default JMS queue by the name 'JobQueue', then the MDB is deployed succesfully. This means the 'lookup' is successful.
    How do I solve this issue? I want to use a new JMS Queue with my MDB.
    I'll be really grateful, if someone can help me out.
    Thanks and Regards,
    Gagan Parhar.

  • Siebel unable to connect to AIA JMS Queue

    Hi All,
    We are working on AIA 2.5 running on SOA Suite 10.1.3.4. We have installed the Order to Activate PIP. We are facing a problem when we try to sumit orders from Siebel. As per our understanding Siebel will put the message on the AIA_SALESORDERJMSQUEUE. However, when the Siebel tries to do so, it returns an error stating :
    12:55:59.699 PM Wed Sep 8: Checking if exception is a connection exception
    12:55:59.699 PM Wed Sep 8: CREATING_CONNECTION : is a Connection related exception
    12:55:59.703 PM Wed Sep 8: Exception during Send:
    oracle.jms.AQjmsException: Io exception: The Network Adapter could not establish the connection
    We have tried telnetting from the Siebel server to the SOA server using the SOA hostname and the RMIS port and we were able to connect. We are struggling to resolve this issue and any inputs you may have is igly appreciated.
    Thanks in advance for your time.
    Thanks and Regards,
    Saptarshi

    Hi,
    Ensure the following set up is done fine.
    The following Java Archive (JAR) files are required to be installed on the Siebel Server (for example, in the C:\cp directory) to communicate with Oracle SOA Suite:
    Siebel JMS JAR files:
    Siebel.jar
    SiebelJI_lang.jar, where lang is the language code of the default language of the Siebel installation
    JAR files required for accessing the JMS provider. For the OC4J JMS Provider supplied with Oracle SOA Suite, the following files are required:
    jms.jar
    jta.jar
    oc4jclient.jar
    optic.jar
    javaee.jar (obtained from the Java EE development kit)
    jmxri.jar
    jms.jar
    j2ee_1.3.01.jar
    jndi.properties file:
    java.naming.factory.initial=oracle.j2ee.rmi.RMIInitialContextFactory
    java.naming.provider.url=ormis://10.15.35.22:12701/default
    java.naming.security.principal=oc4jadmin
    java.naming.security.credentials=welcome1
    In order to debug this issue try writing a java client to access the JMS queue with above properties. This will help you to find the root cause.
    Regards,
    Rahul

  • Dynamic queue name with JMS Queue XML?

    Hi,
    Is it possible to use dynamic queue name with JMS Queue XML?
    I tried using a variable in the JNDI URL, and supply the value in a package. I specified the following in the JNDI URL in the Topology:
    e.g.
    <JMS_RESOURCE>?d=<DTD_FILE>&s=<SCHEMA>&JMS_DESTINATION=#PROJECT_NAME.dest_var
    I declared and set the variable in a package, then tried to load data from the above data server to database. But executing this package gave me the following error:
    7000 : null : java.sql.SQLException: javax.jms.JMSException: Cannot find the target in JNDI (#PROJECT_NAME.dest_var)
    java.sql.SQLException: javax.jms.JMSException: Cannot find the target in JNDI (#PROJECT_NAME.dest_var)
         at com.sunopsis.jdbc.driver.bg.executeQuery(bg.java)
         at com.sunopsis.jdbc.driver.bh.executeQuery(bh.java)
         at com.sunopsis.jdbc.driver.l.f(l.java)
         at com.sunopsis.jdbc.driver.l.executeUpdate(l.java)
         at com.sunopsis.sql.SnpsQuery.executeUpdate(SnpsQuery.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execSrcOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlC.treatTaskTrt(SnpSessTaskSqlC.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.g.y(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)
    Am I doing it wrongly?
    Thanks!

    hi,
    as it's not in Adapter-Specific Message Properties
    http://help.sap.com/saphelp_nw04/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    looks like you cannot do it with jms adapter in standard
    use proxy or your own adapter instead
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • JMS Queue XML: Elements with same name

    Hi
    I notice that ODI does not do a good job of reverse-engineering JMS queue models where an element name is referenced in different parts of the schema.
    For example:
    root
    ..body
    ...consignment
    ....load
    .....event
    ....unload
    .....event
    etc
    In the above, ODI will reverse-engineer the 'event' element under 'load', but not the one under 'unload'.
    I don't have control over the xsd models and was therefore wondering if there is some sort of workaround I can perform in this scenario?
    Cheers

    Actually, I just found the following Oracle note sums this up: 757642.1
    Is it possible to use the SAME ELEMENT as a SUB-ELEMENT in multiple DIFFERENT Elements of an XML File?
    If so, what is the impact of this approach on the reverse engineered Model and Datastores and how can Integration Interfaces be set up to map these identical ELEMENT for which the content is semantically different and as a result to be used differently in different Oracle Data Integrator (ODI) Integration Interfaces.
    The following XML is a simple example in which the ITEM Element is logically set as a sub-element to three other XML Elements:
    •Shoppinglist
    •GroceryStore
    •HardwareStore
    <Shoppinglist>
    <Item>ShoppingList</Item>
    <GroceryStore>
    <Item>Eggs</Item>
    <Item>Milk</Item>
    <Item>Bread</Item>
    </GroceryStore>
    <HardwareStore>
    <Item>Screwdriver</Item>
    <Item>Hammer</Item>
    <Item>Nails</Item>
    </HardwareStore>
    </Shoppinglist>Solution
    Such an approach must be avoided. This is a strict limitation of the ODI XML Driver.
    See Bug:8563428 DUPLICATE SUBELEMENTS WITH DIFFERETNT TYPES ARE NOT SUPPORTED BY XML DRIVER

  • JMS Queue working with only one AIA instance.

    Hi,
    We are having a Web-Logic JMS Queue configured for an instance. I have developed a consumer in AIA instance to pull the messages from the Queue.
    And this works fine.
    Now I have an another instance consumer which is pointing to the same Queue, but it fails to get the messages from it.
    I have switched off the consumer in the FIRST instance, but even then consumer from the SECOND instance was not able to pull the messages.
    Later, I tried switching on the consumer of the FIRST instance, and all the messages were pulled in this instance.
    So how can I make it work with two AIA instances and one JMS Queue, provided only one AIA instance consumer is active at a time.
    Thanks in Advance.
    Regards!

    * Likely your best bet is to check your server logs for "Error" and "Warning" messages, and/or, since these questions are specific to AIA's usage of JMS, post your questions to the AIA newsgroup.
    * WL JMS does not impose a limit on the number of consumers on a queue, but it does only allow one named connection with the same "client id" to connect at a time. Its unusual to name connections in queueing applications, but possible - and AIA may be doing this. (If this is the problem there should be "client id in use" style log messages or exceptions.)
    * Another possibility is a misconfiguration of your remote consumer. Make sure the URL is correct, and remember, if an application is running in the same cluster as the remote destination, don't specify a URL.
    * Also, if the remote consumer is running in a different domain, make sure the domains are named differently, and that no two JMS servers in the two domains have the same name (as per the unique naming restrictions documented in the Best Practices section of the JMS configuration guide -- http://download.oracle.com/docs/cd/E14571_01/web.1111/e13738/best_practice.htm#CACJCGHG ).
    Regards,
    Tom

Maybe you are looking for

  • Word wrap with Flex 4

    Hi, Can someone help me in getting a wordwrap in Spark. Below is my code. Any help regarding this is highly Appreciated I  am trying to get wordwrap within a spark component, but I couldn't. Can someone fix this. Usoing Label or richtext or any contr

  • Hard drive 6 gb/s and PRAM battery questions

    I have two questions: 1) Does iMac Core Duo 20'' (early 2006 first intel model) support 6 gb/s hard drive (I recently bought a WESTERN DIGITAL Sata III 6 Gb / s buffer 64 Mb 7200 rpm)?  when I will upgrade my hard drive it will recognize 6 gb/s speed

  • Phone jack to my laptop

    I have an old Walkman cassette player and found an old cassette I'd like to digitize. I have a converter box... the phone jack to the converter is by way of RCA cables... from the output of the converter which uses RCA jacks ... My question is how do

  • TopicAlias Markers in FM Imported as MapIDs in RH

    TCS 3.5 (RH 9/FM 10).  This would apply to those using TCS for context-sensitive help.  With topicalias markers set in a FM book, the expected functionality 1) link to a project in RH, 2) generate the project, 3) update the project and 4) check your

  • Mobile viewing options?

    Hi just wondering how your pdf sharing works with mobile devices, in particular, when viewing with a mobile browser after clicking an adobe send link... such as what happens if the mobile device has a mobile pdf reader installed...or doesn't have one