on 04-01-2009 4:20 PM
Hi
I've currently got a scenario which sends a flat file to the integration server, it gets mapped and sent to a receiver adapter on a deployed j2se engine.
I'm now trying to convert the xi-xml structured file to a flat file again on the j2se side (the same flat file format it originally had).
My original flat file looks like this -
477
477=AA1
My xml file looks like this -
<?xml version="1.0" encoding="UTF-8"?>
<ns0:ResultMessage xmlns:ns0="urn:xxxx-com:a_test_j2se_filetofile">
<Item>
<field1>477</field1>
</Item>
<Item>
<field1>477</field1>
<field2>AA1</field2>
</Item>
</ns0:ResultMessage>
I am using these content conversion parameters:
xml.addHeaderLine=0
xml.fieldSeparator==
xml.endSeparator='nl'
I get this error on the integration engine (sxmb_moni):
Error while sending by HTTP (error code: 500, error text: Internal Server Error:java.lang.NullPointerException) (See attachment HTMLError for details)
and the j2se adpater log says this:
17:16:32 (4120): Message "13b9d644-54c9-4ffb-0c40-db4c14458d77" of type "application/xml", kind "B" received
17:16:32 (4124): Parsing XML message
17:16:32 (4131): ERROR: Message processing failed with "java.lang.NullPointerException"
What am i missing?
Patch it with SAPXICONS23_0-20000271.SCA
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Please provide the complete configuration of your channel in J2SE
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
This is the current full j2se file receiver config:
File adapter java class
classname=com.sap.aii.messaging.adapter.ModuleXMB2File
version=30
mode=XMB2FILEWITHCONVERSION
#----
#Adress for XMB endpoint -
#----
XI.httpPort=8111
XI.httpService=http://<host>:8111/file/receiver
#----
#File Adapter specific parameters -
#----
file.createDir=1
file.targetDir=E:
xitest
File Receive
file.targetFilename=xmboutput.txt
#file.writeMode=append
#file.writeMode=overwrite
file.writeMode=addCounter
file.counterMode=immediately
#file.counterMode=afterFirst
file.counterSeparator=_
file.counterFormat=00000
file.counterStep=1
#----
#File Content Conversion specific parameters -
#----
xml.addHeaderLine=0
xml.fieldSeparator='0x0B'
xml.endSeparator='nl'
So, now... I did a test configuration in XI and sent your test-payload...it worked.
The J2SE adapter configuration:
____________________________
File adapter java class
classname=com.sap.aii.messaging.adapter.ModuleXMB2File
version=30
mode=XMB2FILEWITHCONVERSION
#----
#Adress for XMB endpoint -
#----
XI.httpPort=8111
XI.httpService=/file/receiver
#----
#File Adapter specific parameters -
#----
file.createDir=1
file.targetDir=c:/transfer/inbound
file.targetFilename=xmboutput.txt
#file.writeMode=append
#file.writeMode=overwrite
file.writeMode=addCounter
file.counterMode=immediately
#file.counterMode=afterFirst
file.counterSeparator=_
file.counterFormat=00000
file.counterStep=1
#----
#File Content Conversion specific parameters -
#----
xml.addHeaderLine=0
xml.fieldSeparator==
xml.endSeparator='nl'
____________________________
And here the configuration of the receiver communication channel in the integration directory:
____________________________
Adapter Type: XI
Receiver
Transport-Protocol: HTTP 1.0
Message-Protocol: XI 3.0
Adapter-Engine: Integration Server
Adressing-Type: URL Address
Target Host: <yourJ2SEip>
Service Number: 8111
Path Prefix:http://<yourJ2SEip>:8111/file/receiver
Authentication Data
Logon data for non-SAP systems
User
Password
____________________________
That's it... sent your payload and got the wished result:
477
477=AA1
Regards,
Heinrich
This is very confusing. Our configs on both the J2SE and Integration Server sides are the same but still i'm getting the original null pointer exception error.
The only other thing i can think of is that perhaps the installation of the adpater engine is somehow wrong.
Initially i couldnt get it to run as a service and ha dto modify the batch file which installs it as a service to reflect the same jars as the manual adapter install batch file.
Once i did that it worked.
I dont think its that though. Did you at stage patch your j2se adapter engine?
Can you think of anything else?
I think you should reinstall and check your J2SE adapter engine. The configuration of the adapter itself seems to be appropriate. I can't give you more hints about basis J2SE configuration. I'm using an installation that runs for years now.
What XI and J2SE version are you using? These information could be helpful for others that may help you on the J2SE configuration.
By the way, did you see this topic?
Try this:
Item.addHeaderLine=0
Item.fieldSeparator='0x0B' or '='
Item.endSeparator='nl'
What "mode" did you chose? "XMB2FILEWITHCONVERSION" or "XMB2FILEWITHROWCONVERSION"?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
Like i said before using anything but xml.<property> gives me this error:
Parameter 'xml.addHeaderLine' is missing (4403)
Invalid 'addHeaderLine' value 'null' found
So using Item.addHeaderLine=0 doesnt seem to work.
The j2se adpater engine forces me to use xml.<property> (as described in the documentation).
I've tried using both XMB2FILEWITHCONVERSION and XMB2FILEWITHROWCONVERSION. No results
Please use the following
Item.addHeaderLine=0
Item.fieldNames=field1,field2
Item.fieldSeparator= =
Item.endSeparator='nl'
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Guys
I've tried both your sugestions with no result.
Using:
Item.endSeparator = 'nl'
Item.fieldSeparator = =
Gives me this error:
09:29:07 : Error(s) in adapter configuration parameters found:
Conversion initialization failed with "java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: (4408)
Parameter 'xml.addHeaderLine' is missing (4403)
Invalid 'addHeaderLine' value 'null' found (4407)
"(4022_E_YLOG)
09:29:07 (4108): Unable to start file adapter (not initialized)
And using:
Item.addHeaderLine=0
Item.fieldNames=field1,field2
Item.fieldSeparator= =
Item.endSeparator='nl'
Gives me the same initialization error.
If i swap back to using 'xml' instead of 'Item' the adpater can start but then i still get the original error.
According to the adapter documentation you're supposed to use 'xml'. Has using anything worked for you guys?
Hi,
Try using,
Item.endSeparator = 'nl'
Item.fieldSeparator = =
instead of xml.endSeparator
and xml.fieldSeparator
Edited by: sivasakthi danasekaran on Apr 1, 2009 6:23 PM
Edited by: sivasakthi danasekaran on Apr 1, 2009 6:55 PM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
89 | |
10 | |
9 | |
9 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.