JMS Adapter Message Selector Problem...
Hi
I have set the following in the invoke before producing the message and dropping on the queue
<invoke name="Invoke_1" partnerLink="adapt"
portType="ns1:Produce_Message_ptt"
operation="Produce_Message"
inputVariable="Invoke_1_Produce_Message_InputVariable"
bpelx:inputHeaderVariable="Sender"/>
On the receive side I have the message selector configured for the adapter as follows:
<jca:operation
ActivationSpec="oracle.tip.adapter.jms.inbound.JmsConsumeActivationSpec"
DestinationName="dattjndi"
UseMessageListener="false"
MessageSelector="Sender=AdaptationRequest"PayloadType="TextMessage"
OpaqueSchema="false" >
</jca:operation>
Where AdaptationRequest is the value for the Sender variable which will be used to filter the message. But this does not work. the messages are still not consumed. What could be the problem?
Thanks,
Anil
did you check the message selector section on
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/jms/Message.html
explains all the operators you can use and the correct syntax. Make a note of the case sensitivity.
Similar Messages
-
JMS Sender adapter Message selector
Does anyone know of a good blog where someone is showing how to use the JMS message selector option in the JMS sender channel? I'd like a screenshot of what is actually typed into this field most of all.
did you check the message selector section on
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/jms/Message.html
explains all the operators you can use and the correct syntax. Make a note of the case sensitivity. -
JMS Adapter Websphere MQ problem
Guys,
I have a problem with websphere MQ using JMS adapter to send messages to XI.
When I send a message with 2 line items to MQ, XI JMS adapter is picking up only the first line item always and second line item just dissapears.
MQ --> XI --> System1
Any suggestions?Hi,
see the below links
/people/alessandro.guarneri/blog/2006/01/04/jms-sender-adapter-handling-too-short-lines
/people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
content conversion
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
SAP help-
http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
Regards
Chilla.. -
PI 7.1 JMS Adapter Correlation ID problem
Hi,
I try to get rid of the Correlation ID generated by the JMS Adapter (receiver).
In the adapter configuration, processing tab, I choose Set Correlation ID To: NO VALUE.
But still, in the message's details I can see a Correlation ID like this:
62656263343530362D633765652D346435652D323166392D
Any idea how to force a NO VALUE or a specific value? (hardcoded)
Thanks,
MartinHi,
I try to get rid of the Correlation ID generated by the JMS Adapter (receiver).
In the adapter configuration, processing tab, I choose Set Correlation ID To: NO VALUE.
But still, in the message's details I can see a Correlation ID like this:
62656263343530362D633765652D346435652D323166392D
Any idea how to force a NO VALUE or a specific value? (hardcoded)
Thanks,
Martin -
Hi ,
I am getting below message in my JMS adapter.
"Sender Channel. Details: (No detail information set.)"
Status of adaper is green. What is the meaning of above statement?Hi S R,
What is the error detail in SMQ1,SMQ2?
Did you try to reprocess them from execute luws? try to change the status to recorded if possible.then execute again.
thanks -
JMS adapter -Message format pre-requisites
Hi,
I am using a sender JMS adapter in XI to read a message from MQ. Can anyone tell me whether the message should be in any specific format like comma separated (csv) or text-tab delimited. I am wondering on what basis the system will split the message and map it to the source structure.
regards,
MadhavanHi Abhisheek,
It doesnt work... i tried adding the ISO 8859 1 in the module and also tried setting the CCSID which is to 819.. for the ISO 8859 1.. bt i doesnt work
i dont understand why its behaving in such a manner but i really feel some silly mistake i am missing out a parameter or something...
I have created a txt file with 2 line only
AAABBBCCC
DDDEEEFFF
And jst trying to pick up this file without any conversion ... kind of a JMS to File senario without any modules.. it still doesnt work..
i dnt think it is recognizing the new line which i have given.. or may be because the conversion modules are stripping out the new line characters
And i have not upgraded my system as well. its XI 7.0 SP 9
RGds
ADitya -
JMS/MDB : message synch problem
We have a WL 8.1 FIFO based queue to which are attached a bunch of MDBs. These MDBs pull messages out of the queue, does some processing and put messages in another queue.
We would like to get the messages in the second queue in the same order in which they were picked up from the first queue.
But because the processing time is slightly different for each type of messages, sometimes some messages jump ahead of another one that was picked up earlier.
We are free to introduce other queues, or to use bridges etc. Can somebody suggest a solution.
( something like using destination key )
Thanks
--sonyHi,
if possible, try with "max-bean-in-free-pool=1".
note: it would be performance impact, as there would be single bean instance.
Thanks,
Qumar Hussain -
Module in Receiver JMS Adapter
I am using the following Modules in one of receiver JMS adapter. What is the function of each Bean that we are using here ??
Any links in this regard is appreciated
1-AF_Modules/RequestOnewayBean-Local Enterprise Bean-0
2-SAP XI JMS Adapter/ConvertMessageToBinary-Local Enterprise Bean-convert_XI2Bin
3-SAP XI JMS Adapter/SendBinarytoXIJMSService-Local Enterprise Bean-exit
4-AF_Modules/WaitResponseBean-Local Enterprise Bean-1
thanks
kumarHi,
The JMS adapter (Java Message Service) enables you to connect messaging systems to the Integration Engine or the PCK.
This link will help you...
JMS adapter
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/5393. [original link is broken] [original link is broken] [original link is broken]
http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
ref this weblog by william Li
/people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
syn-asyn bridge( with out bpm)
/people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
similary asyn-syn bridge
/people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
also refer
http://help.sap.com/saphelp_nw04/helpdata/en/45/20d1dec20a0732e10000000a155369/content.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3867a582-0401-0010-6cbf-9644e49f1a10
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/how%20to%20use%20the%20content%20conversion%20module%20with%20the%20xi%203%20j2ee%20jms%20adapter
/thread/217893 [original link is broken]
JMS adapter -Message format pre-requisites
/people/alessandro.guarneri/blog/2006/01/04/jms-sender-adapter-handling-too-short-lines
/people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure -
Problem setting a provider specific property : JMS adapter
Hi Experts:
I need to set a provider specific property as required by the third party in a IDoc to JMS scenario.
The property name starts with JMS_ and is offcourse a property specific to the JMS provider.
The way I am setting it is I have declared a Additional JMS message property by the same name as desired by the third party say
JMS_XXX
and then using the DynamicConfigurationBean I assign a value to this in the reciever channel.
The problem that we have observed is, all other properties are set as desired, only this one for which the name starts with JMS_ is not set correctly.
Is it possible to set such a provider specific property using XI or not?Hi Amol,
Adapter-Specific Message Properties
· To store adapter attributes in the message header of the XI message, select Set Adapter-Specific Message Properties.
· To apply the following attributes in XI message headers, set the corresponding indicators:
Name Technical Name
JMS Message Correlation ID DCJMSCorreleationID
JMS Message Delivery Mode DCJMSDeliveryMode
JMS Message Destination DCJMSDestination
JMS Message Expiration DCJMSExpiration
JMS Message ID DCJMSMessageID
JMS Message Priority DCJMSPriority
JMS Message Redelivered Flag DCJMSRedelivered
JMS Message ReplyTo Destination DCJMSReplyTo
JMS Message Time Stamp DCJMSTimestamp
JMS Message Type DCJMSType
Used JMS Message Selector DCJMSMessageSelector
Used JMS Message Queue DCJMSMessageQueue
JMS User DCJMSUser
If you want to set additional JMS message attributes, select Specify Additional JMS Message Properties (10 Maximum).
· In the table, enter the names of the JMS message properties whose values are to be included in the message header of the XI message.
The technical names of the additional attributes are DCJMSMessageProperty0, DCJMSMessageProperty1, ..., DCJMSMessageProperty9.
You can enter more than 10 properties in the table, but only the first 10 are taken into account.
The attribute namespace for the adapter is http://sap.com/xi/XI/System/JMS.
if found worth pls do the req
Thanx
Sampath -
JMS Header: JMS Properties and Message Selector
Hi all
I´m using a JMS Adapter to consume messages from a JMS queue (a JMS adapter which create the BPEL instance when a message arrives).
The process must select messages which meet certain criterias, so I´m using Message Selector to filter the messages and only pick up the ones who interest me (If click on the "help" button on JDeveloper Wizard in the page you define Message Selector, you can see an example on how doing this).
So how can I select messages using values placed on JMS Properties, in the Message Selector?
For example, I set in the JMS Header:
JMSInboundHeadersAndProperties
--------JMSInboundProperties
----------------Property
-----------------------name = 'Country'
-----------------------value = 'Brazil'
The JMSAdapter must consume only messages that "Country" = "Brazil".
Thanks in advance.
MenezesYes
I am able to specify JMS Header and JMS Properties when producing a message. However I am not able to user "Message Selector" to filter messages based on JMS Properties information when consuming messages.
In the link you provide, there is an example on how to use Message Selector:
# (a copy from the link)
Message Selector
...for example, you can enter logic, such as:
* JMSType = 'car' AND color = 'blue' AND weight > 2500
* Country in ('UK', 'US', 'France')
I believe the example with "Country" is exactly what I need, but I can´t get it work.
I create the same example above, setting a property named "Country" in the JMSHeader, sending the message to a JMS Queue (BPEL Process #1) and try to comsume it on the Message Selector (BPEL Process#2), but JMSAdapter never consumes the message.
Thanks for your help. -
JMS adapter: Adapter specific message attributes
Hi,
I have a synchronous SOAP to JMS (MQ series) scenario where Im using sync/async bridge (without BPM).
I need to correlate the message being put on JMS queue (JMS receiver adapter) and the response (JMS sender adapter).
The standard receiver JMS adapter only allows the JMS correlation ID to be set to one of three different values (excluding NULL). 2 of these (reference and conversation ID) will be empty in my scenario, leaving me with only the XI message ID. This ID however exceeds the length of ie. the JMS correlation ID and thus isnt suitable for correlating anything using the field JMS Correlation ID.
NB: it is of no use to try and set the conversation ID at mapping time (using container object) since the changed value only is available during mapping execution.
Surely one way of setting the conversation ID would be to use an adapter module in SOAP sender, but this is not an option. Also the sender system will not provide one either.
Now the problem isnt setting the JMS correlation ID dynamically at runtime (this is achieved without trouble using the dynamic configuration API with the key DCJMSCorreleationID). The problem is to actually have XI correlate the request with the response.
Since the JMS collelation ID is smaller than the XI message ID and the conversation and reference ID isnt available, what I figure is that I need to find a MQ message property to use and then use the Set MSProperty to part instead this property surely needs to be large enough to contain the XI message ID.
So what I did was I looked in http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.amqwak.doc/js50938.htm
where a list of fields in the message descriptor is available figuring I can just use one of these. Looking through the list I notice the field MDRQ (Name of reply queue, 48-byte character string) should be able to hold the XI message ID. So I add MDQR in the Specify additional JMS message properties and set the Java Type to String and also enter this field in the Correlation Setting of the receiver JMS adapter.
Runtime:
When looking in MDT I see:
New JMS message will be correlated with the XI message. Correlation rule: XI_MESSAGEID, correlated property: JMS property MDRM, correlation value: 36158680-5a0c-11dc-8c14-000f203cd3c8
I looks like a success! No data is however set in the field when looking at messages being put on MQ.
If I increase the trace level of the JMS adapter I can see (in defaultTrace) the following:
Cannot read the switch setting for property name DCJMSStringProperty0, switch name dynConfigDCJMSStringProperty0. It is switched off.
What does this error mean?
I have of course clicked Use adapter Specific Message-Attributes and also the Specify additional . In other words everything look ok in configuration.
Since Ive also put a check mark in Fail if adapter specific message attributes is missing I can see that I successfully put a value (using dynamic conf. at mapping time) in the field... but still something isnt right the value of the property never reached MQ.
Now Ive tried with a couple of fields in the message descriptor from the previous URL. XI complains all the time.
Anybody got some ideas?
Best Regards,
DanielHi Vijay,
Thanks for your replay,as per your input i creted dynamic configuration method,
i taget structure luks like this
<Data>
<Mesage>
<gl_update>
<header>
<ean1>
<ean2>
</header>
<gl_update>
<Message>
i written UDF and mapped to header element gl_update,
but i am getting below error message in MONI
SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
<SAP:P1>com/sap/xi/tf/_MM_ ffjms_</SAP:P1>
<SAP:P2>com.sap.aii.mappingtool.tf7.IllegalInstanceExcepti</SAP:P2>
<SAP:P3>on: Cannot create target element /ns0:MT_jms_ _a</SAP:P3>
<SAP:P4>sync_out/Data/Message/ GLUpdate. Values missi~</SAP:P4>
<SAP:AdditionalText />
<SAP:Stack>Runtime exception occurred during application mapping com/sap/xi/tf/_MM_ ffjms_; com.sap.aii.mappingtool.tf7.IllegalInstanceException: Cannot create target element /ns0:MT_jms_ asyncout/Data/Message/ GLUpdate. Values missi~</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
i want to know i mapped to UDF to GL_Update is is correct, to which element i have to map.
i think there is no prob with UDF,its executing ,giving warning messages
help me on this,
Regaards
Raj -
Problem with special character like u00E5,u00E4 u00F6 in Sender JMS Adapter
Hi,
Problem:
Sender JMS Adapter has transformation error when the file includes western european characters such as å,ä ö. And because of this reason the data is not picked up by adapter.
The scenrio is JMS --- > XI ---> Proxy.
If the file does not include the western European characters then it is working fine, but when the file include the western european characters such as å, ä, ö so got the error.
Our Efforts:
We have tried ISO8859-1 in JMS Module Tab as shown below.
1. Transfer.ContentType text/xml;charset=ISO-8859-1
AND with this also
2. Transfer.ContentType application/coctet-stream;charset=ISO-8859-1
None of them working.
Error In CC:
In Sender CC monitoring we are getting the below error.
Error while processing message 'aa157082-b064-4421-0fc3-c286d2732093'; detailed error description: com.sap.aii.adapter.jms.api.channel.filter.MessageFilterException: Error converting Message: sun.io.MalformedInputException: TransformException: Error converting Message: 'sun.io.MalformedInputException' at com.sap.aii.adapter.jms.core.channel.filter.SendToModuleProcessorFilter.filter(SendToModuleProcessorFilter.java(Compiled Code)) ...
Any suggestion in this regard will be a great help.
Regards,
Sarvesh> I think you have to figure out first, which codepage you really have, not just try. Maybe you ask someone or you check with a hex editor.
Hi Stefan,
Finally we solved the problem.
As you said above to figure the the codepage, we asked to our MQ team for the same and found that they are using ISO-8859-1. In XI we were also trying with multiple conbinations (ISO-8859-1, UTF-8 and many more), but didn't get any success.
Finally MQ team changed their encoding to UTF-8 and in XI we used ISO-8859-1 and we get the success in picking the data with spl char. Even though in XI the spl char comes in destorted order but at the receiver end they are in proper shape.
Thanks a lot for your help.
Regards,
Sarvesh -
How to hanlde breaked large messages in sender JMS adapter
Hi,
I have been asked like 'how can we handle breaked large messages in sender JMS adapter?'and lets say I am getting some messages as it is and some are breaked into small segements for the mesaages that are large....
do we need to use module,if so is there any standard module that we can use to hanlde this type of scenarios?
thank you in advance.
babuhttp://biemond.blogspot.com/2009/10/jms-request-reply-interaction-pattern.html
if you check the blog of edwin, see his comments at the bottom
there he gives a suggestion how to add the selector properties to filter on
and this one is maybe helpfull
http://blogs.oracle.com/adapters/2010/05/configuring_request-reply_in_jmsadapter.html -
Problem in JMS-Adapter with CharacterSet Websphere MQ
Hi,
we have the following scenario:
JMS -> PI -> File
We have a local Websphere MQ Queue Manager and the follwoing configuration in our sender adapter:
Transport-Protocol: WebSphere MQ (non JMS)
Message-Protocol: JMS 1.x
ConnectionFactory: com.ibm.mq.jms.MQQueueConnectionFactory
Java-class Queue: com.ibm.mq.jms.MQQueue
CCSID: 819
Transport: TCP/IP
JMS-conform: WebSphere MQ (non JMS)
In the local queue manager the messages (XML-Messages with header <?xml version="1.0" encoding="ISO-8859-1"?>) have characterSet 819 (ISO-8859-1). That's correct. You can open the files with XMLSpy and it works.
When we receive the messages by our JMS Sender Adapter all the character seems to be in UTF-8 and I don't know why. All the special characters are wrong cause the header of the XML-message shows ISO-8859-1 but all the signs are decoded in UTF-8.
In the other direction (JMS Receiver adapter, File -> PI - JMS) we have the same problem.
We create a ISO-8859-1 message in mapping (and it is really ISO-8859-1) and send it via JMS Receiver Adapter to the local message queue. But there the message arrives in UTF-8 encoding. I don't understand this.
Does anybody know what could be the cause for this?
Does the JMS adapter convert the messages from ISO-8859-1 into UTF-8?
Are there any parameters we have to set?
I hope anybody has an idea what's wrong.
Regards
Thorsten
Edited by: Thorsten Hautz on Oct 12, 2010 5:42 PMHi,
thanks a lot for your replies.
our driver settings are correct (as I can see).
I removed value 819 from CCSID, but we have the same effect.
The messages in the local queue manager are TextMessages in XML.
Does anybody know, if we need the standard modules (ConvertJMSMessageToBinary and ConvertBinaryToXMBMessage) in this case?
Is it possible to set the CCSID for the message payload anywhere in the configuration?
The CCSID in the Source tab doesn't have any influence to the encoding of the payload message, only to the header data.
Regards
Thorsten -
JMS Adapter - Queue Message Loss
Hi Folks,
I am working on MQ - to - File Scenario, working fine. But some Cases message is fail in SMQ1 & SMQ2, I am not able to re-process that message because of that messages are System Error.
So My Problem was, Once JMS Adapter is pick the Data from MQ, no more data in MQ, some cases message is fail, We can't re-process that message, So i dont want to lose that data.
How can i recover that MQ Data...
Thanks for help,Hi S R,
What is the error detail in SMQ1,SMQ2?
Did you try to reprocess them from execute luws? try to change the status to recorded if possible.then execute again.
thanks
Maybe you are looking for
-
15-f010wm unable to clean install Windows 8.1 on Crucial M500 SSD
I have a new 15-f010wm laptop I got from walmart's black friday deal. I have a 240GB crucial M500 ssd I have already installed. The problem is Windows 8.1 setup will not see the drive. Windows 7 sees it just fine. What I've tried: - updated firmw
-
New Quicktime 7.1.6 and Vista = Blue Screen of Death during video playback
I received an alert from Quicktime about a critical upgrade to 7.1.6. I was running version 7.1.5 without problem. So I did a full upgrade of iTunes w/Quicktime from the download site. Now shortly after trying to play videos from my PC I get the BSOD
-
Only first record in internal table in output
Hi, I have a requirement. I loop at an internal table and that tabl (list_selected_records) records. Loop at list_of_selected_nodes into wa_selected_nodes. node = wa_selected_nodes-node_id. node_level = wa_selected_nodes-node_level. read table ex_lis
-
How do I Sync my Settings in InDesign CC?
How do I sync my settings in InDesign CC? I get a "Sync Settings" option in both Illustrator and Photoshop but don't seem to have that option in InDesign CC. Thanks, c.
-
I have lost the ability to track my daughters phone using her log in for find my iPhone since updat