Author |
Message
|
ejgil_1 |
Posted: Mon Jul 10, 2006 3:58 am Post subject: Input data to OutputRoot |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi,
I generate an output data with XMLNS format (SOAP message)
Code: |
CREATE COMPUTE MODULE ej_01_flow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyMessageHeaders();
SET OutputLocalEnvironment = InputLocalEnvironment;
SET OutputRoot.Properties = InputRoot.Properties;
SET OutputRoot.XMLNS = InputRoot.XMLNS;
DECLARE tns NAMESPACE 'http://schemas.xmlsoap.org/soap/envelope/';
DECLARE ns2 NAMESPACE 'http://www.mrmnames.net';
DECLARE xsd NAMESPACE 'http://www.w3.org/2001/XMLSchema';
DECLARE xsi NAMESPACE 'http://www.w3.org/2001/XMLSchema-instance';
-- Add an XML declaration to the message
SET OutputRoot.XMLNS.(XML.XmlDecl) = '';
SET OutputRoot.XMLNS.(XML.XmlDecl).(XML.Version) = '1.0';
SET OutputRoot.XMLNS.(XML.XmlDecl).(XML.Encoding) = 'UTF-8';
-- Create the SOAP Envelope
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:"SOAP-ENV" = 'http://schemas.xmlsoap.org/soap/envelope/';
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:xsi = 'http://www.w3.org/2001/XMLSchema-instance';
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:xsd = 'http://www.w3.org/2001/XMLSchema';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.(XML.NamespaceDecl)xmlns:ns1 = 'tns:HTTPMsgSetPortType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.(XML.NamespaceDecl)tns:encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.(XML.Attribute)xsi:type = 'ns2:HTTPMessageType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.URL.(XML.Attribute)xsi:type = 'xsd:string';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.(XML.Attribute)xsi:type = 'ns2:DataType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data.(XML.Attribute)xsi:type = 'xsd:string';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.(XML.Attribute)xsi:type = 'ns2:DataType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.Data.(XML.Attribute)xsi:type = 'xsd:string';
-- Populate the return element
DECLARE Fecha_URL DATE;
SET Fecha_URL = CURRENT_DATE;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.URL = Fecha_URL;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.Data = 'Hello World-Out';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = 'My_InputData.Data';
|
but I need to put my input data to my output data, somethig like this
Code: |
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = 'Out_' || InputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputBody.InputData.Data;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputRoot.MRM.InputData.Data;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = CAST(InputBody.InputData.Data AS BLOB);
|
But It doesn´t work,
How can I put the inputs values to my output data fields values?
Thanks.
Emilio. |
|
Back to top |
|
 |
madi |
Posted: Mon Jul 10, 2006 10:01 am Post subject: |
|
|
 Chevalier
Joined: 17 Jan 2006 Posts: 475
|
Quote: |
But It doesn´t work, |
what happens?? do you get any error messages??
have u tried FIELDVALUE??
--madi |
|
Back to top |
|
 |
dilse |
Posted: Mon Jul 10, 2006 10:29 am Post subject: |
|
|
 Master
Joined: 24 Jun 2004 Posts: 270
|
Emilio,
Are you trying to copy 'InputRoot.MRM.InputData.Data' directly into a XML tag called 'InputData.Data' of Envelope's body?
When you are using 'SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputRoot.MRM.InputData.Data;' statement in your ESQL, what error are you getting or what was the behaviour.
Let us know.
DilSe.. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Mon Jul 10, 2006 10:10 pm Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
When I put:
Code: |
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = 'My_InputData.Data';
|
It´s Ok, OutputRoot....InputData.Data has the string ' My_InputData.Data'
But when I try to put InputRoot.MRM.InputData.Data the value is NULL
My Flow is:
httpInput (Domain=MRM and Format mesage=XML1 and Type=Envelope) --> Copute (with the code) --> httpReply
Thanks.
Emilio. |
|
Back to top |
|
 |
elvis_gn |
Posted: Mon Jul 10, 2006 10:16 pm Post subject: |
|
|
 Padawan
Joined: 08 Oct 2004 Posts: 1905 Location: Dubai
|
Hi ejgil_1,
Can you post the input message...if its too large, then atleast the starting to the InputData.Data part...
Regards. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Mon Jul 10, 2006 10:48 pm Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi
I use netTool to put this input message:
Code: |
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns1:http xmlns:ns1="tns:HTTPMsgSetPortType" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<HTTPInputBody xmlns:ns2="http://www.mrmnames.net" xsi:type="ns2:HTTPMessageType">
<URL xsi:type="xsd:string">Test_url_ejemplo01</URL>
<InputData xsi:type="ns2:DataType">
<Data xsi:type="xsd:string">TEST_input_ejemplo01</Data>
</InputData>
<OutputData xsi:type="ns2:DataType">
<Data xsi:type="xsd:string">TEST_input_ejemplo01</Data>
</OutputData>
</HTTPInputBody>
</ns1:http>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
|
And the Output Message is:
Code: |
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<NS1:http xmlns:NS1="http://www.mrmnames.net" xmlns:ns1="tns:HTTPMsgSetPortType" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<HTTPInputBody xsi:type="ns2:HTTPMessageType">
<URL xsi:type="xsd:string">2006-07-11</URL>
<InputData xsi:type="ns2:DataType"/>
<OutputData xsi:type="ns2:DataType">
<Data xsi:type="xsd:string">Hello World-Out</Data>
</OutputData>
</HTTPInputBody>
</NS1:http>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
|
And the inputData is null or empty
the ESQL code I execute to do this is:
Code: |
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyMessageHeaders();
-- Save the MQMD so we can add it back in again later
SET Environment.myMRM = InputRoot.MRM;
SET OutputRoot.Properties = InputRoot.Properties;
-- Create an HTTP header for the message
SET OutputRoot.HTTPRequestHeader.SOAPAction = '';
DECLARE tns NAMESPACE 'http://schemas.xmlsoap.org/soap/envelope/';
DECLARE ns2 NAMESPACE 'http://www.mrmnames.net';
DECLARE xsd NAMESPACE 'http://www.w3.org/2001/XMLSchema';
DECLARE xsi NAMESPACE 'http://www.w3.org/2001/XMLSchema-instance';
-- Add an XML declaration to the message
SET OutputRoot.XMLNS.(XML.XmlDecl) = '';
SET OutputRoot.XMLNS.(XML.XmlDecl).(XML.Version) = '1.0';
SET OutputRoot.XMLNS.(XML.XmlDecl).(XML.Encoding) = 'UTF-8';
-- Create the SOAP Envelope
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:"SOAP-ENV" = 'http://schemas.xmlsoap.org/soap/envelope/';
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:xsi = 'http://www.w3.org/2001/XMLSchema-instance';
SET OutputRoot.XMLNS.tns:Envelope.(XML.NamespaceDecl)xmlns:xsd = 'http://www.w3.org/2001/XMLSchema';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.(XML.NamespaceDecl)xmlns:ns1 = 'tns:HTTPMsgSetPortType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.(XML.NamespaceDecl)tns:encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.(XML.Attribute)xsi:type = 'ns2:HTTPMessageType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.URL.(XML.Attribute)xsi:type = 'xsd:string';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.(XML.Attribute)xsi:type = 'ns2:DataType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data.(XML.Attribute)xsi:type = 'xsd:string';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.(XML.Attribute)xsi:type = 'ns2:DataType';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.Data.(XML.Attribute)xsi:type = 'xsd:string';
-- Populate the return element
DECLARE Fecha_URL DATE;
SET Fecha_URL = CURRENT_DATE;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.URL = Fecha_URL;
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.OutputData.Data = 'Hello World-Out';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = 'My_InputData.Data';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputRoot.MRM.InputData.Data;
RETURN TRUE;
END;
|
If I use a Web service client JAVA application InputData is null
function main is:
Code: |
public static void main(String[] args) {
try {
Ej_01HTTP_SOAP_Service service = new Ej_01HTTP_SOAP_ServiceLocator();
// Now use the service to get a stub which implements the SDI.
Ej_01PortType port = service.getHTTPSOAPPort();
// Make the actual call
HTTPMessageType msgIn = new HTTPMessageType();
DataType data_in = new DataType();
data_in.setData("TEST_Input_ejemplo01");
msgIn.setURL("Test_url_ejemplo01");
msgIn.setInputData(data_in);
HTTPMessageType msgOut = new HTTPMessageType();
DataType data_out = new DataType();
data_out.setData("TEST_Output_ejemplo01");
msgIn.setOutputData(data_out);
msgOut = (HTTPMessageType) port.message_Category(msgIn);
System.out.println("2 El mensaje DATA es :" + msgOut.getOutputData().getData());
System.out.println("2 El mensaje DATA es :" + msgOut.getInputData().getData());
System.out.println("2 El mensaje URL es :" + msgOut.getURL());
} catch (Exception ex){
ex.printStackTrace();
}
}
|
And result is:
Code: |
2 El mensaje DATA es :Hello World-Out
2 El mensaje DATA es :null
2 El mensaje URL es :2006-07-11
|
Emilio. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Tue Jul 11, 2006 12:02 am Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi, more info to try to sove the problem:
I have used netTools to monitor the soap message that tha client java applicacion send to the message borker. It is:
Code: |
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:Message_Category
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="tns:ej_01PortType">
<HTTPInputBody href="#id0"/>
</ns1:Message_Category>
<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:HTTPMessageType"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://www.mrmnames.net">
<URL xsi:type="xsd:string">Test_url_ejemplo01</URL>
<InputData href="#id1"/>
<OutputData href="#id2"/>
</multiRef>
<multiRef id="id2" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:DataType"
xmlns:ns3="http://www.mrmnames.net"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<Data xsi:type="xsd:string">TEST_Output_ejemplo01</Data>
</multiRef>
<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns4:DataType"
xmlns:ns4="http://www.mrmnames.net"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<Data xsi:type="xsd:string">TEST_Input_ejemplo01</Data>
</multiRef>
</soapenv:Body>
</soapenv:Envelope>
|
And the reply soap message is the same that it is in my previous mail
Thanks.
Emilio. |
|
Back to top |
|
 |
madi |
Posted: Tue Jul 11, 2006 6:57 am Post subject: |
|
|
 Chevalier
Joined: 17 Jan 2006 Posts: 475
|
can u use the debugger to see the message tree after it is changed into MRM domain
u can post a trace here if u can
--madi |
|
Back to top |
|
 |
ejgil_1 |
Posted: Tue Jul 11, 2006 11:57 pm Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi,
I have put a trace for each node on my flow
I try to paint it:
HttpInput->trace1
HttpInput-------->Compute->trace2
HttpInput-------->Compute-------->HttpReply
HttpInput with two connections "out" to Trace1 and "out" to Compute then the compute node has two connections "out" to trace2 and "out" to httpReply
The trace code is:
Code: |
---- Environment
${Environment}
---- Root
${Root}
|
And this is the trace files:
Trace1
Code: |
---- Environment
---- Root
(
(0x01000000):Properties = (
(0x03000000):MessageSet = 'DKCQQ88002001'
(0x03000000):MessageType = 'Envelope'
(0x03000000):MessageFormat = 'XML1'
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 1208
(0x03000000):Transactional = FALSE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2006-07-12 07:52:18.500'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'SOAP-HTTP'
(0x03000000):Topic = NULL
)
(0x01000000):HTTPInputHeader = (
(0x03000000):X-Original-HTTP-Command = 'POST http://10.253.14.37:7080/ejemplo HTTP/1.1'
(0x03000000):Host = '10.253.14.37:7080'
(0x03000000):Content-Length = '786'
(0x03000000):Cookie = ''
)
(0x01000021):MRM = (
(0x01000013)http://schemas.xmlsoap.org/soap/envelope/:Body = (
(0x01000015)tns:HTTPMsgSetPortType:http = (
(0x0300000D)http://schemas.xmlsoap.org/soap/envelope/:@encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/'
(0x01000015):HTTPInputBody = (
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:HTTPMessageType'
(0x03000015):URL = 'Test_url_ejemplo01'
(
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'xsd:string'
)
(0x01000015):InputData = (
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:DataType'
(0x03000015):Data = 'TEST_input_ejemplo01'
(
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'xsd:string'
)
)
(0x01000015):OutputData = (
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:DataType'
(0x03000015):Data = 'TEST_input_ejemplo01'
(
(0x0300000D)http://www.w3.org/2001/XMLSchema-instance:@type = 'xsd:string'
)
)
)
)
)
)
)
|
Trace2
Code: |
---- Environment
(
(0x01000000):myMRM = (
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Body = (
(0x01000000)tns:HTTPMsgSetPortType:http = (
(0x03000000)http://schemas.xmlsoap.org/soap/envelope/:@encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/'
(0x01000000):HTTPInputBody = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:HTTPMessageType'
(0x03000000):URL = 'Test_url_ejemplo01'
(0x01000000):InputData = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:DataType'
(0x03000000):Data = 'TEST_input_ejemplo01'
)
(0x01000000):OutputData = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:@type = 'ns2:DataType'
(0x03000000):Data = 'TEST_input_ejemplo01'
)
)
)
)
)
)
---- Root
(
(0x01000000):Properties = (
(0x03000000):MessageSet = 'DKCQQ88002001'
(0x03000000):MessageType = 'Envelope'
(0x03000000):MessageFormat = 'XML1'
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 1208
(0x03000000):Transactional = FALSE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2006-07-12 07:52:18.500'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'SOAP-HTTP'
(0x03000000):Topic = NULL
(0x03000000):Topic = NULL
)
(0x01000000):HTTPInputHeader = (
(0x03000000):X-Original-HTTP-Command = 'POST http://10.253.14.37:7080/ejemplo HTTP/1.1'
(0x03000000):Host = '10.253.14.37:7080'
(0x03000000):Content-Length = '786'
(0x03000000):Cookie = ''
)
(0x01000000):HTTPRequestHeader = (
(0x03000000):SOAPAction = ''
)
(0x01000010):XMLNS = (
(0x05000018): = (
(0x02000000): = ''
(0x06000011): = '1.0'
(0x06000012): = 'UTF-8'
)
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Envelope = (
(0x07000012)xmlns:SOAP-ENV = 'http://schemas.xmlsoap.org/soap/envelope/'
(0x07000012)xmlns:xsi = 'http://www.w3.org/2001/XMLSchema-instance'
(0x07000012)xmlns:xsd = 'http://www.w3.org/2001/XMLSchema'
(0x01000000)http://schemas.xmlsoap.org/soap/envelope/:Body = (
(0x01000000)http://www.mrmnames.net:http = (
(0x07000012)xmlns:ns1 = 'tns:HTTPMsgSetPortType'
(0x07000012)http://schemas.xmlsoap.org/soap/envelope/:encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/'
(0x01000000):HTTPInputBody = (
(0x07000012)xmlns:ns2 = 'http://www.mrmnames.net'
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:type = 'ns2:HTTPMessageType'
(0x01000000):URL = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:type = 'xsd:string'
(0x02000000): = 'hola'
)
(0x01000000):InputData = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:type = 'ns2:DataType'
)
(0x01000000):OutputData = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:type = 'ns2:DataType'
(0x01000000):Data = (
(0x03000000)http://www.w3.org/2001/XMLSchema-instance:type = 'xsd:string'
(0x02000000): = 'HelloWorldOut'
)
)
)
)
)
)
)
)
|
Thanks
Emilio. |
|
Back to top |
|
 |
elvis_gn |
Posted: Wed Jul 12, 2006 2:17 am Post subject: |
|
|
 Padawan
Joined: 08 Oct 2004 Posts: 1905 Location: Dubai
|
Hi ejgil_1,
This is what is not working right ?
Code: |
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = 'My_InputData.Data';
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputRoot.MRM.InputData.Data; |
The second line does not populate the Data to InputData right ?
Is the input in MRM or XMLNS ? It shouldn't be MRM, if i'm getting your design right....use XMLNS.
You will also need to use the namepaces to move to the element in the input...like u have done for the OutputRoot.
Regards. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Thu Jul 13, 2006 12:18 am Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi elvis_gn,
My flow is:
httpInput (Domain=MRM and Format mesage=XML1 and Type=Envelope) --> Copute (with the code) --> httpReply
And when I use
Code: |
SET Environment.myMRM = InputRoot.MRM;
|
I can see, in trace files, the correct values (in Environment.myMRM).
But I don´t know why
Code: |
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = InputRoot.MRM.InputData.Data;
|
or
Code: |
SET OutputRoot.XMLNS.tns:Envelope.tns:Body.ns2:http.HTTPInputBody.InputData.Data = Environment.myMRM.InputData.Data;
|
don't work.
Regards. |
|
Back to top |
|
 |
kimbert |
Posted: Thu Jul 13, 2006 12:39 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Please explain why you are using MRM to parse the XML input message. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Thu Jul 13, 2006 1:31 am Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi
Because I try to do somethig like 3 "Scenario 2 and Websphere Integrator" from
http://www-128.ibm.com/developerworks/websphere/library/techarticles/0311_withers/withers.html
I try to do a message flow, like a Web Service, and I have followed that manual. And in this manual tell about httpInput with a MRM domain.
I think that MRM domain is to validate SOAP input message, is it ok? And this is reason for which I have used MRM Domain.
HttpInput must be use XML or XMLNS domain?
Regards.
Emilio. |
|
Back to top |
|
 |
kimbert |
Posted: Thu Jul 13, 2006 3:03 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
I think that MRM domain is to validate SOAP input message, is it ok? |
Yes, that's a good reason for using the MRM domain for XML data.
Another one would be if you needed some of the extra features which the MRM XML format offers ( e.g. null handling or special date formats ).
Quote: |
HttpInput must be use XML or XMLNS domain? |
Never, ever use the XML domain for new message flows. If you're on v6, use XMLNSC or MRM XML. If on v5, XMLNS or MRM XML. |
|
Back to top |
|
 |
ejgil_1 |
Posted: Thu Jul 13, 2006 3:16 am Post subject: |
|
|
Newbie
Joined: 12 Jun 2006 Posts: 9 Location: Valencia, Spain
|
Hi Kimbert,
But, If the flow has the correct Domain (Domain MRM and Format XML1) and the ESQL code is correct with string value, why doesn´t work if I try to put the InputRoot.MRM.InputData.Data? Where are lost the data?
I am using v5.
Thanks.
Emilio. |
|
Back to top |
|
 |
|