Processing compressed message through MQ Adapter
Hi,
In oracle MQ Adapter documentation I do not see any support for processing compressed messages through MQ adapter.
Is there any other way by which I can process compressed messages through MQ Adapter. I have CCDT(client channel definition table ) file saved at server location.
We are using 11.1.1.5 SOA server.
Thanks,
Ashu
you should ask this in XI forum
Process Integration (PI) & SOA Middleware
Regards
Raja
Similar Messages
-
Synchronous messages through Soap Adapter
Hi XI Guru's
In my scenario I am sending a synchronous soap message over soap adapter. Message flow is like
3rd Party Application --> XI --> SAP R/3.
My message do get processed in SAP R/3 and I do get response in SXMB_MONI as well as in Message Monitoring in RWB.
The return message for message f1bdf1d0-cec5-11de-a9c0-0050569626f6(OUTBOUND) was successfully passed to the waiting "call" thread.
2009-11-11 05:27:26 Information The message status was set to DLVD.
2009-11-11 05:27:26 Information SOAP: response message entering the adapter (call)
2009-11-11 05:27:26 Information SOAP: response message leaving the adapter
But still the response from XI does not reaches 3rd party application.
On digging the logs I found following message. Can this be an issue in XI which is blocking the reponse message from reaching the 3rd Party Application.( I tried posting the message through XML spy and I do get the response in XML spy.)
(Note : My XI Installation has central adapter engine)
#1.5 #0050569626F6004200000D0B00000B5000F66675B4B8DEA5#1257401122698#com.sap.engine.services.servlets_jsp.client.RequestInfoServer#sap.com/com.sap.aii.adapter.soap.app#com.sap.engine.services.servlets_jsp.client.RequestInfoServer#LOVEIN#25369##sapnw03_NPI_6935550#Guest#2fd59d51c9d111debb440050569626f6#HTTP Worker [4]##0#0#Warning##Plain###Cannot send an HTTP error response [500 "Application error occurred during the request procession." (details: "The WebApplicationException log ID is [0050569626F6004200000D0800000B5000F66675B4B8DEA5].")]. The error is: com.sap.engine.services.servlets_jsp.server.exceptions.WebIOException: *The stream is closed.*
+ at com.sap.engine.services.servlets_jsp.server.runtime.client.ServletOutputStreamImpl.ensureOpen(ServletOutputStreamImpl.java:354)+
Any help in this regard is appreciated .
Thanks
LoveinThanks for your reply Stephan / Abhishek.
To add some more info on the issue. This issue is when I am using PI 7.1 version.
I do not face the issue if I use XI 3.0 and end to end flow works fine and response message reaches 3rd party application.
Only difference I have in 2 versions is that in XI 3.0 we have been able to disable the soap adapter authentication (by changing web.xml file) where as in PI 7.1 we have not been able to disable that authentication and userid/ password info has to be provided while sending the soap message from 3rd Party application.
(Security if not disabled gives 401 message as described on following blog [SOAP Sender ADAPTER 401 No Authorisation|SOAP Sender ADAPTER 401 No Authorisation] )
On the other note do you guys know a way to disable this authentication on PI 7.1 version.
Thanks ,
Lovein -
How to process multiple messages through one url over https
Hi,
My scenario is HTTP to IDOC, and the vendor will send different messages through one url to SAP system.
is there any way to achieve this?
Thanks
Jessicacan the Vendor at least pass URL parameters ? Normally, when you have several messages interfaces, the HTTP sender system should distinguish them with the URL parameters (party, namespace, interface). By that, XI then knows how to handle those messages, and can start its receiver determination pipeline. See SAP Help for HTTP sender channel:
Queries entering the plain HTTP adapter must have the following syntax:
http://<hostname:port>/<path>?<query-string>
The query string contains the following data:
● Sender namespace ?namespace=<namespace>
● Sender interface &interface=<interface>
These details define the sender interface.
● Sender service &service=<service>
Specifies the sender service.
● Sender party (optional) &party=<party>
CSY -
Multiple message through FIle Adapter using XI 2.0
I have scenario to create multiple message using File adapter .My file structure will be like
EMPID NAME SKILLS
001 A ABAP
001 A XI
002 B JAVA
Now I want to post first 2 records in one message and last record in other message.
Can we do it in XI 2.0.Any help appreciatedHi Suraj.
Thank you very mutch for your reply.
Excuse me...my mapping is done for message type and idoc.
My problem is that when the interface start, on the sxmb_moni I see an error like this:
Creating Java mapping com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- Using MappingResolver with context URL //srvsapdev/sapmnt/CX1/SYS/global/xi/mapping/gestione_magazzini/7fa9c9e15a7811dab710f3e3ac10826e/ --- Load of com/sap/xi/tf/_MM_XmlOrderToIdocMapping_.class from //srvsapdev/sapmnt/CX1/SYS/global/xi/mapping/gestione_magazzini/7fa9c9e15a7811dab710f3e3ac10826e failed. --- Class not found: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- java.lang.ClassNotFoundException at RUMappingJava.load(): Could not load class: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ Class not found: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- com.sap.aii.ibrun.server.map.MappingRuntimeException: at com.sap.aii.ibrun.server.map.MappingRuntimeException.code_STYLESHEET_OR_CLASS_NOT_FOUND
..where 'gestione_magazzini' is my namespace and 'MM_XmlOrderToIdocMapping' is my message mapping.
Can you help me to undestand the problem?
Thanks,
Gianluca -
Sender Mail Adapter Error: exception caught during processing mail message;
HI , I am configuring mail to file scenario. Need to read mail content (no need to capture From,TO or Subject details) and create a file with the content in the mail.
Need to read mails from microsoft outlook. Exchange server has been configured for POP3 protocol.
Following are the details provoding in sender mail adapter:
URL: provided url in the format: pop://<server name>
Authentication method: plain
provided user credinetions to access mails.
poll interval - 1min
content encoding none.
processing parameters : quality of service-exactly once
Since there is no need to capture From,TO or Subject details, didn't select the option - use mail package.
Verified for unread mails in the mail box and made sure that there are few unread mails.
Also, created data types and other components in IR and completed mapping.
But after starting sender mail communication channel, getting error "exception caught during processing mail message; java.lang.NullPointerException" in RWB-adapter-communication channel monitoring.
please let me know what needs to be done to resolve this error.
Thanks.HI Stefan, i tried, but still it is giving same error. Yes, i am able to access outlook mail with the user credentials given in the communication channel to access exchange server.
I am using message protocol: xipayload . Also since i dont have to capture TO,from,subject details., created data type just with one element of type string, not in the standard format .Does this makes any difference. -
Restrict message volume through JMS adapter (not individual message size)
Hi, does anyone know of a way to restrict the flow of messages through a JMS adapter? For example, If I wanted to only allow up to 1000 messages to be sent in an hour to a particular system. The rest should just be queued in the Adapter Engine until the next hour begins in order to smooth out the load on the recieving system.
I know this is poor design but there is a system that is getting overwhelmed and cannot be easily changed right away. I'd like a way to control this from the middleware using standard PI (no ccBPM).
Any ideas?
Thanks in advance,
AaronStefan, thank you for the idea, that is a good one.
I'm going to assume there is nothing specific we can do in the SAP JMS adapter to control the flow, and look to a solution in the queueing software like you suggested or the 3rd party application.
-Aaron -
Sender jms adapter-archiving before processing the message
Hi,
Do we have any option in Sender JMS adapter to archive the message before processing the message?
I have searched in sender JMS adapter (XI7.0) settings, but couldn't find any option.
My assumption is whether any option provided in configuration setting of adapter engine or any other alternatives.
Thanks,
Srini.Hi Srini.
Here is the code. But you may prefer the EAR module, just for deploy. I need your email to send it to you.
If you want to create it yourself follow the steps in this guide and paste the code:
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f013e82c-e56e-2910-c3ae-c602a67b918e
When you configure the module in the JMS sender communication channel you have to spedify 2 parameter for the log file location:
"file.path" (XI server file system path) and "file.name"
CODE:
package com.bfa.af.modules;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.ejb.CreateException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import com.sap.aii.af.mp.module.Module;
import com.sap.aii.af.mp.module.ModuleContext;
import com.sap.aii.af.mp.module.ModuleData;
import com.sap.aii.af.mp.module.ModuleException;
import com.sap.aii.af.ra.ms.api.Message;
@author ibermatica
public class BFATraceModule implements SessionBean, Module {
private SessionContext myContext;
public void ejbRemove() {
public void ejbActivate() {
public void ejbPassivate() {
public void setSessionContext(SessionContext context) {
myContext = context;
public void ejbCreate() throws CreateException {
public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData) throws ModuleException
FileWriter outFile;
try
Date date = new Date();
String filePath = moduleContext.getContextData("file.path");
String fileName = moduleContext.getContextData("file.name");
outFile = new FileWriter(filePath + System.getProperty("file.separator") + fileName, true);
catch (IOException e)
e.printStackTrace();
throw new ModuleException(e);
PrintWriter out = new PrintWriter(outFile, true);
try
out.println("--- Start of message ---");
//Get message content.
Message data = (Message)inputModuleData.getPrincipalData();
if(data.getDocument() != null)
out.println(data.getDocument().getText());
else
out.println("Empty message.");
out.println("--- End of message ---");
out.println("Total characters: " + data.getDocument().getText().length());
catch(Exception exc)
out.println(exc.toString());
finally
if(out != null)
out.close();
if(outFile != null)
try {
outFile.close();
} catch (IOException e1) {
throw new ModuleException(e1);
return inputModuleData; -
FTP sender adapter wait sometime before processing a message
Hi,
I want my FTP sender adapter to wait sometime before processing a message. This is needed in my case since the receiver of the message cannot consume message in, say two seconds, so I would like to configure a "time to wait before processing message" in PI since PI processes all of the files in folder without waiting another poll interval time if more than one exist.
Is this possible in PI 7.0 sp16?
Regards,HI Tarik
BPM is the solution for this problem. If you are not willing to use BPM other solutions are Adapter module and Scripts
You can write adapter module and use the threads mechanism. Thread.sleep can help you achieve this but you need to set this properly.
Another method is Unix script. Let your actual directory be Dir1 and poll PI to Dir2. Use the script to write files from Dir1 to Dir2 one by one and with time gap. This will work for you.
If you have PI system on Windows i prefer to go with Adapter module.
Thanks
Gaurav -
Viewing the way of a message through integration process
Hey,
I would like to check the lifecycle of a message through an integration process (IP). Therefore I took the ID of a message that triggers the IP. Our IP have several sending steps and I would like to see the messages that will be send. In sxmb_moni I clicked on PE and opened the technical view of my IP.
The payloads of the container are empty. I think this is because of configuration in sxmb_adm.
Is this the only way to figure out which messages belong to my IP?
How to found the message IDs of all messages that belong tho this IP?
thx
chris
Edited by: Christian Riekenberg on Aug 20, 2008 3:38 PM@Bhavesh Kantilal
No I didn't check this flag. Thanks for this information.
I figure out that you can show all messages to a integration process
by using transaction sxmb_moni_bpe.
Following steps are necessary:
- took the message ID, date and time of receiving of the message that triggers a integration process
- go to sxmb_moni_bpe and choose "Process to a message"
- enter receiving interface name that triggers the process and a fitting time.
- choose your process with the time and date of your message
- mark this process and look in the further information if your message ID is in this process
thx
chris
Edited by: Christian Riekenberg on Aug 20, 2008 5:12 PM -
Settings need to be done for messages through process chains.
Hi friends,
Iam trying to send messages through my process chain . I have done the required settings in the process chain to create messages . Now , i came to know that some settings nedd to be done in tcode SCOT to enable the messaging from process chain .
Can any body tell me the steps to do that , as our Basis guy is not here . Are there any need to install some Interner mail gateways ..
Thanks in advance..Hi Nihuja,
After creating node with all details destination and every thing.That will come like this
ex : Your Node name
-> SMTP
Then double click on the SMTP -> U can see the Mail port option there u have to put 25.
Regards
Ramakanth.
While creating the node itself u have to give all the details like destionn via.(internet etc......)
"Assign points if useful" -
BPM, serialization messages through XI
Hello,
I want to achieve the following:
A business process receives and manages each message through XI in the same order as the adapter engine has sent this message (EOIO) to the BPM.
Therefore I use the fork step (Necessary branches = 1).
The first branch receives messages and appends each message to a list. (Never ending iteration: 1 = 1). To receive each message I use a dummy correlation id like a version attribute of the message type (e.g. 1.0).
The second branch manages this message list how long as the last message in the list is managed (Iteration: ReveivedMessage.MessageId != MessageList[n].MessageId.
The process also sends messages EOIO.
I have tested it and it works. But I have never seen such a process and so I'm not sure whether this process reveals any errors.
Can anybody give me an hint whether this process is correct?
Regards
MarcHey Marc,
your questions are very pertinent.
I'll try to give some comments on experience that I've had.
For every collectPattern BPM instance (which is your case), you'll have a input queue which will receive messages while your correlation is active. So, while you are executing steps inside the block which defines the correlation, then you will also have messages being added to that instance's queue. So, it is extremely sugested that you use local correlations in a Block step and that you only put the loop with the receiving step and relevant container operation steps inside it.
In the case that some messages are in the queue but was never processed (because the fork or the loop reached an end condition, for example), they are called "Parked messages" and from XI SP 17/PI SP 8 you can even resend them (with a kind of huge delay time, this is a gap from workflow framework...). Check out these notes:
903139 BPE-RUN: Messages are not processed
901047 BPE-RUN: Local correlations, error in block at runtime
Briefly, you can minimize the probability of a parked message to occur, but you cannot eliminate it (probability will never reach zero). You can, by setting that particular BPM to a mode "without buffering" (meaning, no input queue), minimize the problem, and all messages which would be parked in "with buffering" mode will now be reprocessed (resent to BPE) but they have a kinda large delay (set in SMQR's Pause parameter for that particular queue).
To set the BPM for "without buffering" mode, you need to go to tx SWF_INB_CONF and enter the BPM_MODE='X' (the task of the BPM can be checked in SXI_CACHE).
But please read the notes (and the notes they refer to) before doing any setting. They comment you can't set a particular BPM to "without buffering" if you still have any parked messages for that BPM. You need to check and delete those through report RSWF_XI_UNPROCESSED_MSGS.
Regards,
Henrique. -
Messages stuck at Adapter engine
Hi everyone,
My messages are getting stuck at the Adapter engine level and shows the status as "Holding". But the step at Integration engine seems to work fine.
How could i get rid of these messages, before I run another couple of messages.
Also what could be the reason for the error.
Thanks,
Vinotha M
Edited by: Vinotha M on Feb 23, 2009 5:59 PMHi Vinotha,
Apart from the blogs mentioned above dont forget to go through
http://help.sap.com/saphelp_nw04/helpdata/EN/49/e3fb40ef74f823e10000000a155106/content.htm
This would give you a greater insight into your the cause and analysis of your problem.
Apart from the above link to avoid further cropping of the same problem you can " Start Prioritizing the Processing of Messages" http://help.sap.com/saphelp_nwpi71/helpdata/en/46/6ffe8effc20eede10000000a155369/content.htm
Rgds
joel
Edited by: joel trinidade on Feb 24, 2009 9:55 AM -
How to delete / cancel messages in PI adapter engine
Hello expert,
we have a scenario File (EOIO) --> PI --> ABAP. Today the file we received is big (>100mb), apparently PI can't handle it, and we got error
Transmitting the message to endpoint http://host:port/sap/xi/engine?type=entry using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException:
Error transmitting the message over HTTP. Reason: java.io.IOException: Error writing to server.
seems like PI adapter engine got problem while delivering the huge message to ABAP integration engine. In RWB message monitoring, the message is set to Error. Unfortunately the file has been picked up many times, thus the huge message is stuck in adpater engine. In RWB message monitoring, I can see the message listed many times and status is HOLDING because the previous message can not be delivered to Intergration engine. I want to delete/cancel all the messages, I tried in RWB message monitoring to cancell the messages, however after cancelling one message, it crashed the PI system and cause a reboot.
My question is; Is there some place in NWA (net weaver admin) to force all the messages to be deleted? (Because deleting/cancel in RWB message monitoring does not work because it causes system crash).
Thanks
JaysonHi Team,
I couldn't able to delete old message's from one of Q system, Persistence layer is 584 % filled, after triggering delete job(RSXMB_DELETE_MESSAGES) and Persistence layer has come to 384% and further I couldn't able to delete old messages.I executed program "
RSXMB_CHECK_MSG_QUEUE" and manage to delete few entries.Could you please suggest how to reduce fill level to below 100%
Switch Procedure (for Persistence Tables) Deactivated
Number of Table Entries
3.185.992
Maximum Number of Table Entries
830.000
Current Fill Level in %
384
Threshold value for fill level for executing a switch run in %
60
Number of Logically Deleted Table Entries
0
Decline of Fill Level in % Following Deletion
384
Delete or archive processed XML messages
Job log overview for job: SAP_BC_XMB_DELETE_001 / 06302000
Date Time Message text Message class Message no. Message
13.03.2013 06:39:55 Job started 00 516 S
13.03.2013 06:39:55 Step 001 started (program RSXMB_DELETE_MESSAGES, variant &0000000000034, user ID SAPBATCH) 00 550 S
13.03.2013 06:39:55 Value for parameters DELETION-RELATED_OBJECTS-ASYNC: 1 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-RELATED_OBJECTS-ROWS: 100 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-RELATED_OBJECTS-IDX5_DELAYED: 0 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-ROWS_PER_LOOP-DELETE: 100 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION-ASYNC: 007 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION-SYNC: 007 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION_ERROR-SYNC: 007 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION-IDX5: 007 XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION_UNIT-ASYNC: D XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION_UNIT-SYNC: D XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION_ERROR_UNIT-SYNC: D XMS_ADM 375 S
13.03.2013 06:39:55 Value for parameters DELETION-PERSIST_DURATION_UNIT-IDX5: D XMS_ADM 375 S
13.03.2013 07:27:58 0 XML messages deleted XMS_ADM 351 I
13.03.2013 07:27:59 Step 002 started (program RSXMB_TABLE_SWITCH, variant &0000000000034, user ID SAPBATCH) 00 550 S
13.03.2013 07:28:00 Job finished 00 517 S -
Exception while posting a message using SOAP adapter
Hi
We are getting the following message while posting a SOAP request through SOAP adapter through Http Client. The error message is
<SAP:Error>
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code>MESSAGE.GENERAL</SAP:Code>
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML</SAP:AdditionalText>
</SAP:Error>
Please help in this regard.
Regards
RameshDear Gopal,
I am trying from HTTP->WEB SERvice (R/3 system)
I have created a webservice from RFC.
Receiver Adapter type : SOAP
USer authentification provided
URL provided. i picked from wsdl file
i am getting this error
com.sap.aii.af.ra.ms.api.DeliveryException : invalid content text/html.
I hope u trouble shooted this kind of error.
can u provide me some clues.
regards
chandra
Message was edited by:
chandra shekar dasari -
Error while connecting through DB adapter in ESB
ESB is getting data from siebel , but while sending to database through DB adapter , it gets the following error
An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: esb:///ESB_Projects/temp_DeTokenizedSource_MeruGenericUpdateSubscriberESB_vtmwapcl.vlink.in/genericUpdateOracleARCustomer_DbAdp.wsdl [ genericUpdateOracleARCustomer_DbAdp_ptt::genericUpdateOracleARCustomer_DbAdp(InputParameters) ] - WSIF JCA Execute of operation 'genericUpdateOracleARCustomer_DbAdp' failed due to: Error while trying to prepare and execute an API. An error occurred while preparing and executing the XMERU.XMERU_CUST_INT_PKG.XMERU_CUST_INT_PROC API. Cause: java.sql.SQLException: ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13-ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13-ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13 -ORA-06508: PL/SQL: could not find program unit being called ORA-06512: at "XMERU.XMERU_UTIL_PKG", line 652 ORA-06512: at "XMERU.XMERU_CUST_INT_PKG", line 1122 ORA-06512: at line 1 ; nested exception is: ORABPEL-11811 Error while trying to prepare and execute an API. An error occurred while preparing and executing the XMERU.XMERU_CUST_INT_PKG.XMERU_CUST_INT_PROC API. Cause: java.sql.SQLException: ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13-ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13-ORA-20001: XMERU_CUSTOMER_API => Processing for Customer : Statement No : 13 Unhandled Oracle Exception Occured at 13 -ORA-06508: PL/SQL: could not find program unit being called ORA-06512: at "XMERU.XMERU_UTIL_PKG", line 652 ORA-06512: at "XMERU.XMERU_CUST_INT_PKG", line 1122 ORA-06512: at line 1 Check to ensure that the API is defined in the database and thatORA 06508 PL/SQ could not find program unit being called in the BPEL
Regards,
Anuj
Maybe you are looking for
-
Internet Explorer Script Errors in HTML Help
I am using Robohelp 8 HTML. I create both WebHelp and Microsoft HTML Help. My operating system is Vista. The WebHelp file will be directly called from the application software to allow users to access topic specific help. The Microsoft HTML help is t
-
Internet running very slowly when using external monitor.
I've used my HDTV as an external monitor for my various MacBooks for years with no problems. I bought a 17-inch MacBook Pro, and it worked perfectly doing the same thing for the first few months that I had it. Recently it has started to have very poo
-
Disk Image too big in iDVD 6.0.1
I created a 1 hour 27 minute movie in iMovie 6.0.1 and dragged it into a new iDVD 6.0.1 project. Used Travel widescreen theme and the default audio clip for that main menu. Removed the audio clips from the chapter menus. Created a disk image: 4.29GB,
-
How do i stop mzilla from opening in tabs
now every time i open mozilla it in tab mode i hate tabs and just want a new window to open each time i need i have llooked around and cant find now were to turn off tabs darren
-
MMy ipad 3 was replaced last week , old one wouldn't download 8.0, now with my replacement ipad a software update appeared stating 8.2 was downloaded and ready to install, so I did, how do I download and install 8.0 ? It keeps indicating my software