XI 2.0 Standalone J2SE SOAP Adapter as client - SOAP:encodingStyle
Hi,
We're setting up the J2SE SOAP Adapter of XI 2.0 to talk to a synchronous web service provided by a webmethods platform.
When we generate the Request message using the WSDL and post it directly via the HTTP test tool the message is understood and a response message is returned.
Here is the Request:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<m:callFP091 xmlns:m="http://destserver/FP091.flows" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<iw1_RECTPE xsi:type="xsd:string">String</iw1_RECTPE>
<iw1_DLRCODE xsi:type="xsd:string">String</iw1_DLRCODE>
<iw1_FRNCODE xsi:type="xsd:string">String</iw1_FRNCODE>
<iw1_JOBNUM xsi:type="xsd:string">String</iw1_JOBNUM>
<iw1_CHASIS xsi:type="xsd:string">String</iw1_CHASIS>
<iw1_COLOUR xsi:type="xsd:string">String</iw1_COLOUR>
<iw1_DESCRIP xsi:type="xsd:string">String</iw1_DESCRIP>
<iw1_INVNUM xsi:type="xsd:string">String</iw1_INVNUM>
<iw1_CAPAMT xsi:type="xsd:string">String</iw1_CAPAMT>
<iw1_INTFRE xsi:type="xsd:string">String</iw1_INTFRE>
<iw1_LOC_IND xsi:type="xsd:string">String</iw1_LOC_IND>
<iw1_REGISTRATION xsi:type="xsd:string">String</iw1_REGISTRATION>
<iw1_ENGINE_NUM xsi:type="xsd:string">String</iw1_ENGINE_NUM>
<iw1_VIN_NUM xsi:type="xsd:string">String</iw1_VIN_NUM>
</m:callFP091>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
When we try to use the SOAP Adapter and pass it the following message from XI:
<m:callFP091 xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:m="http://destserver/FP091.flows"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >
<iw1_RECTPE xsi:type="xsd:string">E1</iw1_RECTPE>
<iw1_DLRCODE xsi:type="xsd:string">3009838</iw1_DLRCODE>
<iw1_FRNCODE xsi:type="xsd:string">333</iw1_FRNCODE>
<iw1_JOBNUM xsi:type="xsd:string">123</iw1_JOBNUM>
<iw1_CHASIS xsi:type="xsd:string">2</iw1_CHASIS>
<iw1_COLOUR xsi:type="xsd:string">3</iw1_COLOUR>
<iw1_DESCRIP xsi:type="xsd:string">4</iw1_DESCRIP>
<iw1_INVNUM xsi:type="xsd:string">5</iw1_INVNUM>
<iw1_CAPAMT xsi:type="xsd:string">6</iw1_CAPAMT>
<iw1_INTFRE xsi:type="xsd:string">7</iw1_INTFRE>
<iw1_LOC_IND xsi:type="xsd:string">8</iw1_LOC_IND>
<iw1_REGISTRATION xsi:type="xsd:string">9</iw1_REGISTRATION>
<iw1_ENGINE_NUM xsi:type="xsd:string">1</iw1_ENGINE_NUM>
<iw1_VIN_NUM xsi:type="xsd:string">2</iw1_VIN_NUM>
</m:callFP091>
The SOAP adapter wraps the envelope and body around this message, provides an empty header but changes the SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" attribute to SOAP:actor='http://schemas.xmlsoap.org/soap/encoding/'.
The generated SOAP message is:
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>
<SOAP:Header/>
<SOAP:Body>
<m:callFP091 xmlns:m='http://196.11.134.83/FP091.flows'
SOAP:actor='http://schemas.xmlsoap.org/soap/encoding/'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
<iw1_RECTPE xsi:type='xsd:string'>E1</iw1_RECTPE>
<iw1_DLRCODE xsi:type='xsd:string'>3009838</iw1_DLRCODE>
<iw1_FRNCODE xsi:type='xsd:string'>333</iw1_FRNCODE>
<iw1_JOBNUM xsi:type='xsd:string'>123</iw1_JOBNUM>
<iw1_CHASIS xsi:type='xsd:string'>2</iw1_CHASIS>
<iw1_COLOUR xsi:type='xsd:string'>3</iw1_COLOUR>
<iw1_DESCRIP xsi:type='xsd:string'>4</iw1_DESCRIP>
<iw1_INVNUM xsi:type='xsd:string'>5</iw1_INVNUM>
<iw1_CAPAMT xsi:type='xsd:string'>6</iw1_CAPAMT>
<iw1_INTFRE xsi:type='xsd:string'>7</iw1_INTFRE>
<iw1_LOC_IND xsi:type='xsd:string'>8</iw1_LOC_IND>
<iw1_REGISTRATION xsi:type='xsd:string'>9</iw1_REGISTRATION>
<iw1_ENGINE_NUM xsi:type='xsd:string'>1</iw1_ENGINE_NUM>
<iw1_VIN_NUM xsi:type='xsd:string'>2</iw1_VIN_NUM>
</m:callFP091>
</SOAP:Body>
</SOAP:Envelope>
This message has no SOAP:encodingStyle attribute and is therefore not understood by the WebMethods web service. Here is the error message from the web service:
[B2BCORE.0076.9201] SOAP Message Coder cannot decode message; no encoding style is specified
How do I configure the outbound SOAP adapter within the XI 2.0 J2SE adapter engine to add the SOAP:encodingStyle attribute to the outbound message?
I have tried playing around with the XMBWS.* parameters outlined in the adapter engine documentation but these don't seem to have any influence on the way the SOAP request message is formed.
Any suggestions would be appreciated.
Regards,
-Derek
Hi,
You could use the webMethods XI adapter to create the connection.
Best Regards,
Sander
Similar Messages
-
Standalone (J2SE) adapter - axis SOAP adapter - issue duplicate messages
All,
Perhaps you can help me. I've setup a scenario where an standalone (J2SE) adapter sends a file to SAP XI channel, configured on the central adapter engine, of type SOAP configured to use Axis servlet.
The connection is setup and the standalone adapter channel logs thre response from the SOAP channel which reads HTTP error 500, indicating a duplicate message.
SAP has identified this problem and proposes in the FAQ for Axis (note 1039369) to set on the SOAP channel module CallSapAdapter property ignoreDuplicate to true in the module processor.
I've implemented this as suggested however found the problem persists. I'm still receiving an HTTP 500 error.
Your help is much appreciated solving this problem.
Thanks
HaraldAs there was a bugfix recently, make sure that you have installed the latest patch.
If this does not work, open an OSS ticket for this issue.
Stefan -
J2SE file adapter checkModificationInterval
Hello,
We're using a standalone J2SE sender file adapter. This adapter polls at a certain directory. (XML)Files are posted in this directory via ftp. When files that are polled become relatively large >2 MB it occurs that part of the file is already processed when file has not been completely written into the directory. This causes an incomplete XML message to be sent to XI system causing an error message.
The XML file is processed again when file has been written completely.
However this should be avoided by using the parameter file.checkModificationInterval however we are not succeeding finding the right value for this parameter in combination with
file.retryInterval
file.pollInterval
file.processingLocked
Does anybody have a clue.Hi Emile
You can just directly set the parameter to,
file.checkModificationInterval=some milliseconds value
The way this works is, the file adapter first reads the file, then it waits for the specified time and checks if there is any change in length. If the file length changes it will repeat the read procedure. Again the process is repeated, and if it finds that there is no change in length, the file is processed. The key here is to try and identify the approximate time interval that can be set.
cheers
Sameer -
How to get the filename from J2SE File adapter
In our project scenario , we are using J2EE and J2SE engine both .J2EE for mapping and J2SE for Deliveying the message .
In one senario, routing will be based on the filename .
J2SE Sender File adapter --- XI Adapter --- XI pipe line
So the File reaching to XI pipelane via J2SE File adapter--> XI adapter.
When we are using the dynamic configurator in the XI to get the filename
we are not able to get the file name becasue it is coming to XI via
XI adapter.
How to get the filename ????Hope I am clear about the problem.hi,
try this
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
//obtengo la Key del FileName
DynamicConfigurationKey keyF = DynamicConfigurationKey.getName();
http://help.sap.com/javadocs/NW04/current/pi/com/sap/aii/mapping/api/DynamicConfigurationKey.html
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/70c89607-e4d9-2910-7280-f6746e964516
/people/mohammed.zabiulla/blog/2008/03/26/have-you-ever-tried-to-determine-mail-cc-dynamically
Hope it helps
Thanks
Rodrigo
Edited by: Rodrigo Pertierra on Apr 11, 2008 9:31 AM -
Hi,
We are using J2SE Plain Adapter ...
In one of my scenario i need to send a flat file from one system to another.
To achieve this i have created a sender file adapter in J2SE with content conversion. file is picked successfully ..i have given a sample file as follows
123;abc;xyz
456;qwe;fds
then in moni i can see this file as in XML.
now i need to convert this xml file into flat file by using J2SE receiver file adapter.
Can anybody help me how to configure receiver file adapter in J2SE?
Please see the below code... for sender file J2SE adapter..
<b>## file adapter java class
classname=com.sap.aii.messaging.adapter.ModuleFile2XMB
version=30
mode=FILE2XMBWITHSTRUCTURECONVERSION
Use Password Tokens
PWD.tokenHandler=PWtokens
Integration Engine address and document settings
XI.SLDConfiguration=SLDaccessor
XI.TargetURL=http://abc.com:8000/sap/xi/engine?type=entry
XI.User=xyz
XI.Password=xyz
XI.Client=100
XI.Language=en
Quality of Service (EO,EOIO,BE)
XI.QualityOfService=EO
Repository Information
##XI.SenderParty=ADAPTER
XI.SenderService=BS_SENDER_FCC
XI.Interface=MI_FCC1_Out
XI.InterfaceNamespace=http://www.sap-press.com/xi/training/00
#XI.ReceiverParty=
#XI.ReceiverService=
File processing config
file.sourceDir=f:/abc/
file.sourceFilename=xyz*
file.type=TXT
#file.encoding=UTF-8
file.pollInterval=10
file.processingMode=delete
xml.documentName=MT_FCC1
xml.documentNamespace=http://www.sap-press.com/xi/training/00
xml.recordsetName=Data
xml.recordsetStructure=item,1
xml.item.fieldNames=ID,Name,Address
xml.item.fieldSeparator=,</b>
Thanks in Advance..
Regards,
Reehanuse this help link as a reference;
http://help.sap.com/saphelp_nw04s/helpdata/en/95/bb623c6369f454e10000000a114084/content.htm
it is as similar to the sender side configuration -
Question about J2SE-File-Adapter
Hallo,
i would send with the J2SE-File-Adapter a *.CSV to SAP XI.
The structure in the SAP XI is:
PlaintMaintenanceMessagetype
......Datasource..................string
......Data
..........item
..............EquipmentID.............string
..............FunktionalLocation......string
..............Data....................string
..............Time....................string
The *.csv File structure is:
6ATESTDEMOYVES,
1234,
Limo,
20060105,
122030,
The configuration of the J2SE-File-Adapter is:
classname=com.sap.aii.messaging.adapter.ModuleFile2XMB
version=30
mode=FILE2XMBWITHROWCONVERSION
##File Adapter specific parameters (example, see docu)
##file.type=BIN
file.type=TXT
file.encoding=UTF-8
xml.documentName=ns:PlaintMaintenanceMessagetype xmlns:ns="http://doehler.com/sapxi/krausdemosender"
xml.structureTitle=6ATESTDEMOYVES
xml.processFieldNames=fromConfiguration
xml.fieldSeparator=;
xml.fieldNames=Datasource,EpuipmentID,FunctionalLocation,Data,Time
But it not runing! Can anybody help me? Are any How to guide to send a *.csv with the J2SE-File-Adapter.
Thanks laura
With the XML File it works. But there are ofer 40000 records in the *.csv, and i will not create this in *.xml!
The structure of the XML.File are:
<?xml version="1.0" encoding="UTF-8"?>
<ns:PlaintMaintenanceMessagetype xmlns:ns="http://doehler.com/sapxi/krausdemosender">
<Datasource>6ATESTDEMOYVES</Datasource>
<Data>
<item>
<EpuipmentID>1234</EpuipmentID>
<FunctionalLocation>Limo</FunctionalLocation>
<Data>20060105</Data>
<Time>122030</Time>
</item>
<item>
<EpuipmentID>1235</EpuipmentID>
<FunctionalLocation>Bier</FunctionalLocation>
<Data>20060106</Data>
<Time>122031</Time>
</item>
</Data>
</ns:PlaintMaintenanceMessagetype>Hi Laura,
You can navigate thru these links to get more information:
http://help.sap.com/saphelp_nw04/helpdata/en/6f/246b3de666930fe10000000a114084/content.htm
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e698aa90-0201-0010-7982-b498e02af76b
Cheers,
Chandra -
Hi
I'm trying to setup a Plain J2SE JDBC adapter but i'm not sure what format the properties should have in the configuration.
What should i fill in for the JDBC driver section? I have a MS SQL implementation -
db.jdbcDriver=?????
i tried db.jdbcDriver=com.microsoft.sqlserver.jdbc.SQLServerDriver but that didnt work.
The log says ERROR: Attempt to load JDBC driver failed ("java.lang.ClassNotFoundException: ")
Thanks>
Riaz Patel wrote:
> Hi
>
> I'm trying to setup a Plain J2SE JDBC adapter but i'm not sure what format the properties should have in the configuration.
>
> What should i fill in for the JDBC driver section? I have a MS SQL implementation -
>
> db.jdbcDriver=?????
>
>
> i tried db.jdbcDriver=com.microsoft.sqlserver.jdbc.SQLServerDriver but that didnt work.
>
> The log says ERROR: Attempt to load JDBC driver failed ("java.lang.ClassNotFoundException: ")
>
> Thanks
Have you upload the DB Driver on PI System?
I think that you did't do this... -
Send Filename from j2se FILE Adapter
Hi,
I need store filename from local file to xml element. When I use j2ee adapter there is no problem. I sended Filename to Adapter Metadata and through DynamicConfigurationKey in mapping I write it to element.
My question is: How could i do it in j2se plain adapter? (In our customer there is no way for using j2ee adapter)
Many thanks,
Paul.hi,
try this
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
//obtengo la Key del FileName
DynamicConfigurationKey keyF = DynamicConfigurationKey.getName();
http://help.sap.com/javadocs/NW04/current/pi/com/sap/aii/mapping/api/DynamicConfigurationKey.html
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/70c89607-e4d9-2910-7280-f6746e964516
/people/mohammed.zabiulla/blog/2008/03/26/have-you-ever-tried-to-determine-mail-cc-dynamically
Hope it helps
Thanks
Rodrigo
Edited by: Rodrigo Pertierra on Apr 11, 2008 9:31 AM -
Hi,
I am trying to register an outbound file adapter (J2SE Plain Adapter Engine) in the XI server to finally map the adapter to a communiction channel.
What I tried is to activate the SLDaccessor service in the J2SE Plain Adapter Engine (as mentioned in Plain Adapter Docs -> Serive: SLDaccessor Service).
After restarting the Adapter, the protocol in Plain Adapter Engine didn´t show any errors.
Now my problem is where can I find in the "XI-Tools" (SLD, Configuration Builder, ABAP-based Server GUI) that the registration of the adapter did run properly?
What I expected was that my file adapter would appear in the Integration Builder in my communication channel under the tab "Parameters" in the drop-down box "Adapter Engine". Unfortunately, it is not listed there.
Furthermore, I do not exactly understand the benefit of registering the adapter in the SLD. What is the real advantage than establishing a connection between the adapter and the XI with the parameters XI.TargetURL etc.
Regards,
KrisJason, thanks for your answer.
Unfortunately, it is not running yet. The Adapter protocol states now:
11:03:00 : No entry in SLD found for Bus.System 'WeissmannBuisSys1'
The corresponding adapter configuration looks like:
XI.SenderParty=
XI.SenderService=WeissmannBuisSys1
XI.Interface=OrderMI
XI.InterfaceNamespace=http://www.foobar.de/sap/xi/test170604
Can I at least assume that there has been a connection to the business SLD?
If yes, I do have a Business System 'WeissmannBuisSys1' in SLD -> Business Landscape as well as in my Configuration Scenario under 'Business Systems'. Is this the right one to specify in the parameter XI.SenderService or will there be something else expected?
Besides that, the corresponding documentation is somehow confusing to me:
You can set the following arguments (except in mode FILE2XMBSTREAM) and use them to identify the adapter configuration during routing and mapping in the Integration Engine pipeline. You can also find an explanation about each argument there.
- XI.SenderParty=<sender party name>
- XI.SenderService=<sender service name>
- XI.SenderInterfaceNamespace=<namespace URI>
- XI.SenderInterface=<name>
- XI.ReceiverParty=<receiver party name>
- XI.ReceiverService=<receiver service name>
You must set at least XI.SenderService and XI.Interface. The receiver is generally determined by routing in the Integration Engine. This specification is not mandatory.
The XI.Interface mentioned in the last paragraph is not listed above in the parameters list. I assume XI.Interface == XI.SenderInterface.
In the german documetation there is also another XI.InterfaceNamespace mentioned in the last paragraph which I assume is XI.SenderInterfaceNamespace.
Regards,
Kris -
Configure SSL in J2SE Plain adapter
I tryed to configure SSL in J2SE Plain adapter. (7.0)
I've generated a certificate file "certif_file.cer" and
while I put in GUIBrowserEngine Property File the following
line:
HTTP.SSLcertificate=F:\tech_adapter_70\certif_file.cer
I've got the following error message:
16:19:10 : Error(s) in GUIBrowserEngine configuration
parameters found:
ERROR: Certificate file 'F: ech_adapter_70certif_file.cer' not
found, must quit!
It seems that something wrong with my definition of full path
to this file. But I do not find from SAP Library any solution
about this problem.
Could you help me?Hi Boris,
Please try to give the full path using backslash '/' :
e.g. F:/tech_adapter_70/certif_file.cer
I hope it will work.
The J2SE Adapter Engine uses SSL only for communication line encryption, not for client and server authentications. Since this is a drawback with respect to security, you should use the J2EE Adapter Engine in insecure environments.
All configuration data for the Plain J2SE Adapter Engine is maintained in flat property files.The file for the engine administration data itself is located in the following directory:
<installation directory>/tech_adapter/BaseConfiguration
The file for the adapter configuration data is located in the following directory:
<installation directory>/tech_adapter/Configuration
The adapters of the Plain J2SE Adapter Engine are configured locally and not in the Integration Directory. Exchanged messages are also stored directly in the file system.
Therefore, ensure that only the operating system user, who has started and therefore owns the adapter engine process, can read the property files and has access to the directories used for message exchange.
*Pls: Reward points if helpful*
Regards,
Jyoti
Edited by: Jyoti Acharya on Dec 19, 2007 5:05 PM -
FTP protocol in J2SE Plain Adapter
HI All,
I have to achieve FTP in J2SE (sender)adapter as i am picking the file from different server.In simple File adapter we can easily achieve it using FTP transport protocol but how to achieve the same in J2SE .What configuration i have to do in my J2se adapter?.Plz help me as it is urgent................
Regards
Saurabh SharmaWhen you have achieved this already in J2EE adapter, there should not be any problem in configuring the J2SE adapter. The parameters you need are described in only help:
http://help.sap.com/saphelp_nw04/helpdata/en/0d/00453c91f37151e10000000a11402f/frameset.htm
○ ftp.host=<ftp-server>
○ ftp.port=<port-no.>
○ ftp.user=<user name>
○ ftp.password=<password>
○ ftp.connection=perFileTransfer|permanently
○ ftp.mode=<Binary|Text>
Regards
Stefan -
J2SE Plain Adapter - Continuous Operation
Hi All,
I would like to ask for your assistance in configuring the J2SE Plain Adapter Engine for continuous operation.
This is the scenario:
We currently have the db_receiver (jdb receiver) adapter up and running. The connection to the DB is ok and also the communication to XI is successful. However we would like now to have it permanently running as NT service to avoid running the run_adapter.bat and open the web browser, enter user and pass, etc, every time we need to use the adapter.
Following the directions given by the Adapter.pdf document, under section u201CContinuous Operationu201D, the service SAPAdapterengine was successfully created, but now we have two doubts with regards to this:
1- The service mentioned above is not started right after the installation and every time we try to do it, the following message is displayed: The SAPAdapterengine service on Local computer started and stopped. Some services stop automatically if they have not work to do, for example, the Performance Logs and Alert service.
2- How the newly created service detects the configuration weu2019ve done for the db_receiver adapter in the very first time?
Is there any extra step to link the service and the previous configuration made for db_receiver? Could you please give me or point me to some info source that explain the way the service works?
Thanks in advance. Your help is highly appreciated.
Kind regardsHi Diego,
Have you had any luck in getting this to work. I am having the same issue, would really appriciate the help.
Kind regards -
Bluetooth communication between J2SE server and J2ME client
Hi everyone!
I'm new here in this forum...
I try to make a small project to my studies,
My project will include J2SE server and J2ME client.
I'm stuck in the step of finding the server with the wireless toolkit emulator.
I found this issue in old subject: here
I try the solution in reply 6 but I don't understand exactly who to define kvem.home, and I got this error:
" You must define the system property "kvem.home" "
maybe someone can help me and explain how to do that?
thanks!Hello,
I want to find out how this can be done, too. I tried with
System.setProperty("kvem.home", "C:\\WTK2.5.2");but I get an error:
java.lang.UnsatisfiedLinkError: com.sun.kvem.jsr082.impl.bluetooth.BluetoothController.setSystemProperty(Ljava/lang/String;Ljava/lang/String;)I included these files in the build path:
c:\WTK2.5.2\wtklib\gcf-op.jar
c:\WTK2.5.2\wtklib\kenv.zip
c:\WTK2.5.2\wtklib\kvem.jar
and I import com.sun.kvem.bluetooth.*;
I'd appreciate any help. -
Hello Guru's,
I need to configure the SOAP adapter on the J2SE adapter plain for receiving messages. I have read the documentation about it and I need to do configure the following:
version=3.0
classname=com.sap.aii.messaging.adapter.ModuleBubble
Bubble.Helper=com.sap.aii.messaging.adapter.ModuleBubbleHelperXMBWSImpl
XMBWS.TargetURL=http://WebServiceHost:port/service-arguments
XMBWS.User=<username>
XMBWS.Password=<password>
XMBWS.DefaultSOAPAction=<default_soap_action>
XMBWS.KeepHeaders=<boolean>
XMBWS.KeepAttachments=<boolean>
XMBWS.UseEncoded=<boolean>
XMBWS.EncodingVersion=3
Specifies which version of the XI message format to use to code the message header in the HTTP header (see XMBWS.UseEncoded). The value 2 stands for the XI 2.0 message format and the value 3 stands for the XI 3.0 message format. The default value is 3.
XMBWS.UseQueryString=<boolean>
XMBWS.XMBPort=<port_no>
XMBWS.XMBPath=<path>
XMBWS.XMLEncoding=UTF-8 (standaard)
XI.AckFinal=<boolean> true / false
What I do not get is what the difference is between XMBWS.TargetURL=http://WebServiceHost:port/service-arguments and
XMBWS.XMBPort=<port_no>, XMBWS.XMBPath=<path>
Can someone explain it in other words (maybe with an example) then help.sap.com?
Hope to hear from you.
Best regards,
Guido
Edited by: G. Koopmann on Jun 24, 2008 9:04 AMYou have to distinguish between parameters starting with XI. and XMBWS.
You use the XMBWS. parameters for the direction XI -> J2SE adapter -> Webservice, the other parameters vice versa.
When you deploy (or unzip) your J2SE adapter, then you find following files in the folder: insoap and outsoap. Check them for details.
Regards
Stefan -
i,
When I post a XI message via SAP PI 7.10 SP7 integration server to a J2SE adapter engine to a file adapter, then when I use mode "XMB2FILE" in the receiver file adapter configuration on the J2SE Adapter Engine then the XML file is delivered into the appropriate folder with the correct XML format and content (As expected). However when I change the mode to XMB2FILEWITHCONVERSION then message fails in the integration Engine on the PI server.
With:
<Trace level="2" type="T">Addressing mode: url</Trace>
<Trace level="3" type="T">Host = "HOST"</Trace>
<Trace level="3" type="T">Port = 8111</Trace>
<Trace level="3" type="T">Transport protocol = HTTP 1.0</Trace>
<Trace level="3" type="T">Message protocol =</Trace>
<Trace level="3" type="T">Path = /file/receiver?action=execute&pipelineid=Receiver</Trace>
<Trace level="2" type="T">Auth mode: basicNonSAP</Trace>
<Trace level="3" type="T">Conversion of language from char2 to char1</Trace>
<Trace level="3" type="T">User = rip</Trace>
<Trace level="3" type="T">Client =</Trace>
<Trace level="3" type="T">Language =</Trace>
<Trace level="3" type="T">Creating HTTP-client</Trace>
<Trace level="3" type="T">HTTP-client: creation finished</Trace>
<Trace level="3" type="T">Security: Basic authentication</Trace>
<Trace level="3" type="T">Serializing message object...</Trace>
<Trace level="3" type="T">HTTP-client: sending http-request...</Trace>
<Trace level="3" type="T">HTTP-client: request sent</Trace>
<Trace level="3" type="T">HTTP-client: Receiving http-response...</Trace>
<Trace level="3" type="T">HTTP-client: response received</Trace>
<Trace level="3" type="T">HTTP-client: checking status code...</Trace>
<Trace level="3" type="T">HTTP-client: status code = 500</Trace>
<Trace level="3" type="T">Deserializing message object...</Trace>
<Trace level="3" type="System_Error">Error while sending by HTTP (error code: 500, error text: Internal Server Error:java.lang.NullPointerException)</Trace>
</Trace>
</Trace>
<Trace level="3" type="System_Error">Error exception return from pipeline processing!</Trace>
<Trace level="1" type="T">Persist Message in Retry State</Trace>
A file is created in the target folder with no content and each time PI retries a new file is created.
If I look at the J2SE adapter trace file the following error is displayed:
Apr 3, 2009 3:05:03 PM ...i.messaging.adapter.XMB2FileProcessor [Thread[Thread-1145,5,main]] Error: Message processing failed with
java.lang.NullPointerException
at com.sap.aii.af.sdk.xi.adapter.Conversion.convertXML2Plain(Conversion.java:621)
at com.sap.aii.messaging.adapter.XMB2FileProcessor.persistFile(ModuleXMB2File.java:1658)
at com.sap.aii.messaging.adapter.XMB2FileProcessor.onMessage(ModuleXMB2File.java:1346)
at com.sap.aii.messaging.adapter.ModuleHttpServer$ListenerDetails.onMessage(ModuleHttpServer.java:448)
at com.sap.aii.af.sdk.xi.net.HTTPRequest.run(ServerHttpImpl.java:437)
Please can you assist in the resolution of this problem?
Regards
Willie HugoHi Stefan,
Thank for the prompt reply. I am sending the XI message to a plain J2SE Adapter Engine. As I under stand the process, the XI message XML to flat file conversion will take place in the J2SE Adapter Engine in the File Adapter, configured there. If I under stand correctly we need to deploy a patch to the J2SE Adapter Engine and the note refers to XI 3.00 & 7.00, these Adapter Engines I can only assume is J2EE. Also the scenario described in the note is from csv to XML and not the required XML to CSV.
Please can you assist further?
Regards
Willie Hugo
Maybe you are looking for
-
Is there an app to convert text messages to email in order to print a thread?
I need to be able to print my text message thread. Is there an app that will convert my texts to emails?
-
VB6 and Excel loading then unloading immediately
First off I posted this here http://social.msdn.microsoft.com/Forums/office/en-US/4c07879b-e033-4e8f-8266-95f9f606923a/vb6-and-excel-loading-then-unloading-immediately?forum=exceldev However I think this is the right forum for this. We have an old VB
-
ITunes 4.7-Can't Buy Music Yet Again!
Why can't you buy music in the iTunes music store, I bought music just over a month ago and now it says I need to have version 6 or higher. Why is apple doing this once again! They did this before, it's a shame! Imac G5 Mac OS X (10.3.9)
-
Graphical problems with Safari
Hi all, Tried posting this in the Using you r MacBook Pro forum but no response so maybe it's more relevant here... My MB Pro has developed a strange graphical glitch when using Safari and navigating to sites from the top sites screen and when steppi
-
Mapping query result to excel sheet
Hi Experts, i have a requirement where in i need to map the result into particular cellls of the excel sheet, because the excel sheet acts as front end which has graphs and by just putting the result in particular cells of excel the graph is automati