Hello,
i have a problem with a SOAP and XMLDSIGN.
I made a response with HTTPINBOUNDXMLBINSERVICE but before WRITE AND SEND command i need to create the XML to assign the signature XMLDSIGN.
I created a new feature with a new INTEGRATOR instance and it calls a JSON web service that add signature to the document and return it signed.
But the soap failed :
------- JSMDIRECT ERROR -------
ERR3014
No data returned from service
TPGAMC_IDB_DEV
but in the INTEGRATOR TRACE I have the HTTP_RESPONSE_CONTENT.XML
LANSA INTEGRATOR
- Fabrice.geay
- Posts: 21
- Joined: Tue Dec 12, 2017 2:06 am
- Location: FRANCE
- Contact:
LANSA INTEGRATOR
Best regard
Fabrice GEAY
Fabrice GEAY
-
caseywhite
- Posts: 192
- Joined: Thu May 26, 2016 1:17 am
Re: LANSA INTEGRATOR
When you open the SOAP service what does it look like. Are you including SERVICE_CONTENT(*HTTP).
SERVICE_LOAD SERVICE(SOAPSERVERSERVICE) SERVICE_CONTENT(*HTTP)
I think this only affects processing the request but maybe it is affecting the response too?
SERVICE_LOAD SERVICE(SOAPSERVERSERVICE) SERVICE_CONTENT(*HTTP)
I think this only affects processing the request but maybe it is affecting the response too?
- Fabrice.geay
- Posts: 21
- Joined: Tue Dec 12, 2017 2:06 am
- Location: FRANCE
- Contact:
Re: LANSA INTEGRATOR
I don't use SOAPSERVERSERVICE but i use HTTPINBOUNDXMLBINDSERVICE.
The first bind is *INBOUND Type and the response with OUTBOUND type.
Schema :
Open HTTPINBOUNDXMLBINDSERVICE
Bind *INBOUND
get request
-> made actions
before response
*
Open a new instance with XMLBINDFleService
bind *output
set beofre response xml
made the xml beofre include xmlDsig,
write xml on disk and encode it in base64 for send to a webservice json which one add the xmldsign and return the xml in base64.
decode the base64
retreive information
set the response
write and SEND
The first bind is *INBOUND Type and the response with OUTBOUND type.
Schema :
Open HTTPINBOUNDXMLBINDSERVICE
Bind *INBOUND
get request
-> made actions
before response
*
Open a new instance with XMLBINDFleService
bind *output
set beofre response xml
made the xml beofre include xmlDsig,
write xml on disk and encode it in base64 for send to a webservice json which one add the xmldsign and return the xml in base64.
decode the base64
retreive information
set the response
write and SEND
Best regard
Fabrice GEAY
Fabrice GEAY
-
caseywhite
- Posts: 192
- Joined: Thu May 26, 2016 1:17 am
Re: LANSA INTEGRATOR
Are you opending 2 instances of Integrator. You indicated you opened a new instance. When you open an instance you are assigned a JSM handle. Are you sure you are using the correct handle of the 1st instance you opened?
- Fabrice.geay
- Posts: 21
- Joined: Tue Dec 12, 2017 2:06 am
- Location: FRANCE
- Contact:
Re: LANSA INTEGRATOR
yes I have open 2 instances of Integrator.
First for the SOAP
Second for the new option for the signature XMLDSIGN
First for the SOAP
Second for the new option for the signature XMLDSIGN
Best regard
Fabrice GEAY
Fabrice GEAY
-
caseywhite
- Posts: 192
- Joined: Thu May 26, 2016 1:17 am
Re: LANSA INTEGRATOR
Are you calling the command SERVICE_CLOSE anywhere. I believe that will prevent the JSMDIRECT from getting the response from your program even though it gets created.
If that doesn't do it, what if you take out the starting of the second JSM instance. Can you get a SOAP response to occur?
If that doesn't do it, what if you take out the starting of the second JSM instance. Can you get a SOAP response to occur?
- Fabrice.geay
- Posts: 21
- Joined: Tue Dec 12, 2017 2:06 am
- Location: FRANCE
- Contact:
Re: LANSA INTEGRATOR
Are you calling the command SERVICE_CLOSE anywhere
* No, I use the JSMX_CLOSE at the end after the SEND command and for the second instance.
* I don't use the same service so i need to start an other instance.
First : HTTPInboundXMLBindService
Second : XMLBidnFileService
* No, I use the JSMX_CLOSE at the end after the SEND command and for the second instance.
* I don't use the same service so i need to start an other instance.
First : HTTPInboundXMLBindService
Second : XMLBidnFileService
Best regard
Fabrice GEAY
Fabrice GEAY
-
caseywhite
- Posts: 192
- Joined: Thu May 26, 2016 1:17 am
Re: LANSA INTEGRATOR
It is okay to have the JSMX_CLOSE, but do you have this:
Use Builtin(JSMX_COMMAND) With_Args(#JSMHND 'SERVICE_CLOSE') To_Get(#SA_JSMSTS #SA_JSMMSG)
If you do have this, you need to remove it and see if that helps. If you don't, the only other thing I can think to do is to check the HTTP job and see if there is a message in there with an error. Maybe it will tell you what is going on.
Use Builtin(JSMX_COMMAND) With_Args(#JSMHND 'SERVICE_CLOSE') To_Get(#SA_JSMSTS #SA_JSMMSG)
If you do have this, you need to remove it and see if that helps. If you don't, the only other thing I can think to do is to check the HTTP job and see if there is a message in there with an error. Maybe it will tell you what is going on.
- Fabrice.geay
- Posts: 21
- Joined: Tue Dec 12, 2017 2:06 am
- Location: FRANCE
- Contact:
Re: LANSA INTEGRATOR - [CLOSED]
Hi sorry for the delay.
I have more than one closeJSm in the function so the soap response was send on the first closejsm and the response was not completed.
I have more than one closeJSm in the function so the soap response was send on the first closejsm and the response was not completed.
Best regard
Fabrice GEAY
Fabrice GEAY