How to view SOAP Header
Hi Gurus,
i have a simple questions to you (hopefully).
At the moment i am working with SOAP AXIS Receiver Adapter because i need to add <wsse> Tags to my SOAP Header. (according to blog: /people/pravesh.puria/blog/2009/08/26/adding-usernametoken-timestamp-in-soap-adapter-using-axis-framework)
I get no error for this configuration but i am wondering where i can have a look at the SOAP Header that will be transfered to the target url.
when i go to CommChan-Monitoring and have a look into Message-Details-->Message-Content i only can view "SOAP Document" this looks to me like the internal SOAP Envelope, but this is not going out the target url right? And i also can have a look on the payload, but there is no SOAP Header at all.
thank you for your help
Best Regards
Udo
No, this XML is the whole XI message and it is not sent by the SOAP (axis) adapter. If you want to see exactly what is sent, try checking it with the TCPGateway tool as advised on the SOAP FAQ note
[Note 856597 - FAQ: XI 3.0 / PI 7.0 / PI 7.1 SOAP Adapter|https://websmp230.sap-ag.de/sap(bD1wdCZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=856597]
Under question "Q: How can I trace the whole message?". Otherwise, on SXMB_MONI, try selecting the PAYLOAD item on the left menu and, on the payload on the right, right-click and select "VIEW SOURCE".
Similar Messages
-
How to view SOAP header generated from XML Gateway ?
Hi All,
I am using XML Gateway integrate EBS and trading partner using web services.
Currently I am having problem with including wsse authorization information in the outbound message of EBS.
I am able to view the payload in the transaction monitor but not able to check the SOAP header of message.
How to view the current SOAP header generated by EBS and/or include the wsse information which are required by recipient trading partners ?
Thanks in advance for your help.
Regards,
RamNo, this XML is the whole XI message and it is not sent by the SOAP (axis) adapter. If you want to see exactly what is sent, try checking it with the TCPGateway tool as advised on the SOAP FAQ note
[Note 856597 - FAQ: XI 3.0 / PI 7.0 / PI 7.1 SOAP Adapter|https://websmp230.sap-ag.de/sap(bD1wdCZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=856597]
Under question "Q: How can I trace the whole message?". Otherwise, on SXMB_MONI, try selecting the PAYLOAD item on the left menu and, on the payload on the right, right-click and select "VIEW SOURCE". -
How to bind soap header using jax-rpc
To Whom It May Concern:
I am using Rad7, Ibm Websphere 6.1, on Windows XP.
I created an SoapHeader first using a string and bind it using jax-ws.
It works for jax-ws but unfortunately, my work services uses jax-rpc.
Does anybody know how to bind the soap header using jax-rpc.
Any help or hint would be greatly appreciated it.
Here is my code:
import org.apache.cxf.headers.Header;
import org.apache.cxf.headers.Header.Direction;
import org.apache.cxf.helpers.DOMUtils;
import org.apache.cxf.binding.soap.SoapHeader;
import javax.xml.namespace.QName;
import java.io.StringReader;
import java.util.List;
import java.util.ArrayList;
import javax.xml.ws.BindingProvider;
@Test
public void testService() throws Exception {
try
URL wsdlURL = new URL("http://localhost:9087/abc/services/ServiceABCService");
ServiceRequestServiceService service = new ServiceRequestServiceServiceLocator();
ServiceRequestService port = service.getServiceRequestService(wsdlURL);
//How to Add Soap Header using jax-ws
String xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><ABCHdrRq "
+ "xmlns=\"http://xmlns.ABCgc.net/ABC/2002/header/\" "
+ ">"
+ "<version>1.0</version><srcInfo><chType>abc</chType><chInst>0124</chInst>" +
"<appName>sSAR</appName><hostName>DW70210521</hostName><userId>fxue</userId>" +
"</srcInfo><startTimeStamp>2010-06-04T13:44:45.132</startTimeStamp><clientDt>2010-06-04T13:44:53.242</clientDt><serviceInfo><serviceName>ServiceRequestService</serviceName>" +
"<serviceFunc>addServiceRequest</serviceFunc></serviceInfo>" +
"<prevTransInfo><prevRqUID>BORS2010-06-04T13:41:10.2067f9368d1-8c5c</prevRqUID>" +
"<prevRespTimestamp>2010-06-04T13:41:10.871</prevRespTimestamp>"+
"<prevRespEndTimestamp>2010-06-04T13:41:10.902</prevRespEndTimestamp>+</prevTransInfo>"+
"</ABCHdrRq>";
SoapHeader dummyHeader1 = new SoapHeader(new QName("uri:http://xmlns.ABCgc.net/ABC/2002/header/", "ABCHdrRq"),
DOMUtils.readXml(new StringReader(xml)).getDocumentElement());
dummyHeader1.setDirection(Direction.DIRECTION_OUT);
List<Header> headers = new ArrayList<Header>();
headers.add(dummyHeader1);
((BindingProvider)port).getRequestContext().put(Header.HEADER_LIST, headers);
//How to Add Soap Header to the request using jax-ws
catch(Exception e)
System.out.println("Exception message:"+e.getMessage());
Yours,
FrustratedWell, how an attachment is processed depends on your application logic...if your application logic requires to processing attachments and verify it before processing the SOAP message, handlers could be better option.
If you need to process the attachment while processing the SOAP message, you can do it in the service implementation class.
In both the cases you need to get access to SOAPMessage object and from there get the attachments with getAttachments method. -
How to Capture SOAP Header in BPEL
Hi All,
I have a requirement to pass a value from SOAP Header to BPEL and has to capture the value in BPEL and manipulate the data.
In the receive activity i created a variable and assigned Header to it, but iam getting NULL value when i check the instance, this is the code i used in receive
activity.
<receive name="receiveInput" partnerLink="bpelsensor_client" portType="client:BPELSensor" operation="process" variable="inputVariable" createInstance="yes"
bpelx:inputHeaderVariable="headerID"/>
Any suggestions how to do this?How did you define headerID?
You can also see an example here:
http://java.net/projects/oraclesoasuite11g/pages/BPEL
Arik -
How to generate soap header using java code
Hi,
I need to generate the following soap header using java DOM.
Can you send me some java code snippet to do so?
<soapenv:Header>
<api:RequesterCredentials soapenv:mustUnderstand="0" xmlns:api="urn:ThinkPod:api:ThinkPodAPI" xmlns:ebl="urn:ThinkPod:apis:eBLBaseComponents">
<ebl:ThinkPodAuthToken>YourToken</ebl:ThinkPodAuthToken>
<ebl:Credentials>
<ebl:DevId>YourDevId</ebl:DevId>
<ebl:AppId>YourAppId</ebl:AppId>
<ebl:AuthCert>YourAuthCert</ebl:AuthCert>
</ebl:Credentials>
</api:RequesterCredentials>
</soapenv:Header>You want to generate that on a mobile device or how is that related to CLDC and MIDP?
-
How to create SOAP Header elements using SAAJ??
I am facing a problem when adding header elements under SOAP Header
using SAAJ(api).
I want to create a structure as following:
I get a empty SOAP header obejct by writing code--> SOAPHeader header
= envelope.getHeader();
But not able to add SOAP header elements as specified in example
below. I tried but its giving me error as
"HeaderElements must be namespace qualified"
CAN ANYBODY TELL ME THAT HOW TO ADD HEADER ELEMENTS USING SAAJ??
<SOAP:Header>
<AccountNumber>123</AccountNumber>
<AuthorisationCode>test111</AuthorisationCode>
<Source>abc</Source>
<Market>01</Market>
</SOAP:Header>I'm including this comment from some code I've just written after wrestling with this for hours (I've actually left it on another post as well). The upshot of it all is that you have to include a namespace URI when creating a header in SAAJ:
NOTE: SOAP 1.1 requires that all header entries be namespace-qualified to
namespace URI's. The SAAJ 1.2 implementation requires a Name object with
the namespace URI to make this happen even if the prefix used is already
visible by being declared higher in the document (e.g. in the Envelope).
However, the namespace URI is not present in the serialized header element
as long as it was declared higher in the document. In order to create a
header element without a prefix (to conform to a web service definition
that doesn't use a prefix in its headers, for example), leave the prefix
null in the addHeaderElement() method.
For example, with a SOAPHeader 'hdr':
//first create the name
Name name = env.createName("my-local-name", null, "my-URI");
//then create the header element
SOAPHeaderElement he = hdr.addHeaderElement(name);
This would result in an XML element that looked like this:
<my-local-name xmlns="my-URI"/>
This would allow SAAJ developers to create a header for a service that
only expected a local name in its header elements (as many do!). As long
as the service doesn't choke on the attribute (validation! evil!), this
should work.
Rob Kemmer
01/12/2005
-
How to access SOAP header without using SOAP message handler
I have a requirement to retrieve SOAP header information within each web services operation. So I can't use SOAP message handler. Is there any way to do that? BTW, I am not using workshop.
Thanks.Howeve how can I put data into soap header in UDF? DynamicConfiguration won't work for soap header, right?
Which data do you want ot put into the Header section.
ASMA or Dynamic Configuration is used to read/ put the details from/ into the header elements.....
Refer: http://help.sap.com/saphelp_nw04/helpdata/en/43/0a7d1be4e622f3e10000000a1553f7/frameset.htm
From the help section:
This information is not located in the payload of the message, but in additional message header fields.
Regards,
Abhishek. -
How to generate soap header elemtn ds:X509Certificate in SAOP message?
Hello all,
could you please help me to solve the following issue?
I need to generate a following security header on weblogic 10.3:
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>MIICtTC.....</X509Certificate>
</X509Data>
</ds:KeyInfo>
</ds:Signature>
If I use a standard Weblogic WS-Policy file (e.g., Wssp1.2-2007-Wss1.0-X509-Basic256.xml), the following header is created (please ignore changes in namespaces):
<dsig:KeyInfo>
<wsse:SecurityTokenReference
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:wsse11="http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
wsse11:TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"
wsu:Id="str_vUsIPkGU5I26BGcy">
<wsse:KeyIdentifier
EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"
ValueType="http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1">zgXqyWX5atWpNj5EhRsF7viA3uU=</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</dsig:KeyInfo>
The header in this case point to <wsse:BinarySecurityToken... which contains the certificate but it is not what I need. I need the certificate to be included directly in Keyinfo element.
Do you know how to achieve it, if I should modify a ws-policy file (and how in this case) or if I can somehow tell Weblogic how the result SOAP message should look like? Or will I have to implement this by myself using some existing java libraries and bypass Weblogic security?
Thanks in advance
JaroslavEric,
Could you please recommand a good document on how to work with routing, stage, action ...?http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/consolehelp/proxyactions.html#wp1265888
http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/consolehelp/proxyactions.html#wp1319158
http://www.orafmwschool.com/oracle-service-bus-routing-and-transformation/
It is considered good etiquette to reward answerers with points (as "helpful" - 5 pts - or "correct" - 10pts).
Hope it helps !!
Regards,
Abhinav Gupta -
In Receiver Mail Adapter ,how to ignore SOAP Header attachment
HI Folks,
Am using Receiver Mail Adapter and am getting 2 attachments.
1. one is Soap header which contains Control records
2. payload
I want only Payload as attachment and need to ignore SOAP Header(AT00001.xml).
The configuration is as below:-Trasport protocol : SMTP
Message Protocol: XIALL
Please provide Inputs.
Thanks & Regards
Ashok ReddyHi Gagandeep,
Scenario: File------>mail( Bypass scenario)
i had posted file in FTP and am getting attachment properly but aditionally am getting ATT00001.xml as SoapHeader.this i need to ignore.
PFB Module Parametrs i used:
localejbs/AF_Modules/MessageTransformBean LocalEnterpriseBean transform
Modulekey Parameterattribute value
transform Transform.ContentDisposition attachment;filename=”Pocr_860.txt”
transform Tansform.ContentType text/plain
Regards
Ashok -
How to set SOAP Header When Calling Business Service (OSB) Using Split-Join
Hi,
We need to call WSDL based webservice which requires heading static content for successful call. As we need to call the same service parallely, hence we want to use Split-Join.
Looked at couple of forum links, noted that we can't play with headers while working with Split-Join.
For curiosity, just want to check any option other than using proxy as mediator in setting header information.
Regards
Venkata MadhuVenkata,
You still have the option, if you hv n't tried this one.
To enable this capability, you must declare the header parts along with the body parts in a single request/response message in the Split-Join WSDL and in the WSDL of the proxy or business services invoked by the Split-Join. With the message parts declared in the WSDLs, SOAP header content is available to Split-Joins in the request/response message variables.
Following is an example of the message and binding definitions in the WSDL.
Message
<wsdl:message name="retrieveCustomerOverviewByIdRequestMessage">
<wsdl:part name="retrieveCustomerOverviewByIdRequest"
element="co:retrieveCustomerOverviewByIdRequest"/>
*<wsdl:part name="serviceContext" element="sc:serviceContext"/>*
</wsdl:message>
Binding
<wsdl:input>
<soap:body use="literal" parts="retrieveCustomerOverviewByIdRequest"/>
*<soap:header message="tns:retrieveCustomerOverviewByIdRequestMessage"part="serviceContext" use="literal"/>*
</wsdl:input>
hope it helps !!
Regards,
Abhinav -
How to add SOAP header element?
Hi,
Scenario : RFC --> SOAP
I would like to add parameters into the soap header :
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Header>
*<OPER_REF>SAPPI</OPER_REF>*
</SOAP:Header>
<SOAP:Body>
<ns2:createSapProductRequest xmlns:ns2="http://www.mycompnay.com/projectname">
<country>FR</country>
<division>1300</division>
<productStage/>
</ns2:createSapProductRequest>
</SOAP:Body>
</SOAP:Envelope>
So I made a Java Mapping to reach my goal so my message looks like :
<ns0:Messages
xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>
<SOAP:Envelope
xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Header>
<OPER_REF>SAPPI</OPER_REF>
</SOAP:Header>
<SOAP:Body>
<ns2:createSapProductRequest
xmlns:ns2="http://www.mycompany.com/myproject">
<country>FR</country>
<division>1300</division>
<productStage/>
</ns2:createSapProductRequest>
</SOAP:Body>
</SOAP:Envelope>
</ns0:Message1>
</ns0:Messages>
But when I launch the process here is what PI do :
<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>
<soapenv:Header>
<OPER_REF xmlns="">SAPPI</OPER_REF>
</soapenv:Header>
<soapenv:Body>
<ns2:createSapProductRequest xmlns="http://www.mycompnay.com/myprojecty" xmlns:ns2="http://www.mycompnay.com/myprojecty">
<country xmlns="">FR</country>
<division xmlns="">1300</division>
<productStage xmlns=""></productStage>
</ns2:createSapProductRequest>
</soapenv:Body>
</soapenv:Body>
</soapenv:Envelope>
this request has been found thanks to the tool TCPGW. Has you can see there is 2 <soapenv:Body>
What is wrong ?
regardsI was right, the solution is :
My problem was the adapter. It was miss used.
_The configuration is : _
HTTP without SOAP Envelope and in the Module :
Name : localejbs/AF_Modules/MessageTransformBean
Type : L
Key : Plain2XML
_Module's Configuration : _
Plain2XML -> Transform.ContentType -> text/xml;charset=utf-8
All the XML messages was well formed even with the strange xmlns attributes.
Regards -
How to change soap header in xml
some one know how can i change the SOAP:mustUnderstand="1" to SOAP:mustUnde
Hi,
you could use the below alternative solution also as some Web services do not accept the message , if Content type is application/XML in the HTTP Header, it will accept only Text/XML. So While calling the Web service, the content has to be changed, This is possible using Module of the adapter as shown in the screen shot.
HTTP Header field values before using the module
User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505
content-id: [email protected]
content-type: application/xml
Content-Length: 1280
Module name - localejbs/AF_Modules/MessageTranspormationBean
Type - Local Enterprise Bean Module - This is defined by the user, but the same name should be given in the module configuration for passing the parameters. In this case transform In the module configuration ,
Module key - In this case transform
Parameter name - Transform.ContenType
Parameter Value - text/xml;charset=utf-8
Here you could use the required parameters and pass the values....:-))
Thanks
Swarup -
How to view "From" header field in OUTgoing messages in Mail? Frustrating.
In Mail v.4.3 (in OSX 10.6.4), I need to view the "From" field in my outgoing messages as I am composing them. However, there seems to be no setting in Mail which allow this.
I find this very frustrating because in Eudora (which I used to use), the "From" field in outgoing messages is visible by default. But in Mail, not only is it not visible by default, there seems to be no way to make it visible.
In the "Customize..." button to the left of the Subject field in outgoing messages, one has the option to add as default outgoing message fields "cc," "bcc," "Reply-To," and "Subject," but none of those are what I want. It allows one to also view the address of the mail server, but that also is not what I'm looking for. What I want is to see my outgoing +email address+. And nowhere is there an option in the Preferences to turn this on. (At least as far as I could tell.)
In fact, the only way to see the identity in the outgoing "From" field is to go to Preferences, then click on Accounts, and look there; or send oneself a test email. Both of which are a hassle and should be unnecessary.
In case you're curious as to why I want to see my outgoing "From" header field:
I have several different "personas" online, each of which uses a different email address: My work address (with a work-related domain); my family/personal address (with a different email address than my work address); an online avatar I use in various gaming sites (also with its own address, since I don't want to use my personal name/address in the gaming community); and so on. However, I have all incoming emails to all accounts auto-forwarded to the same central email account. Most of the time I'm just replying to business emails, so my outgoing "Full Name" and "Email Address" (in Preferences>Accounts) are generally set to my business name and address; but on occasion when I want to reply to a non-business email and not have the recipient see my business email address, I go in to Preferences>Accounts and change "Full Name" and "Email Address" (i.e. what is displayed to the user) to something different. And when I'm done with that, I change it back to my business address.
However, sometimes I forget if I've changed it back or not, or forget what I've changed it to. In Eudora, All one needed to one was create a new outgoing email and it would display the "From" field so I could instantly see my outgoing identity. But in Mail, there is no "From" field in outgoing emails, so I'm constantly nervous and wondering which outgoing identity I may have changed to and accidentally forgotten to change back from.
(Yes, yes, I know that if a recipient wanted to be snoopy, they could look at the "full headers" of any incoming email and see the name of my email server, which may different from my displayed email address; but we're not talking about spy-stuff here, I'm just trying to not confuse people and keep business separate from personal.)
So: is there any way for me to see the outgoing "From" field in the emails I send? Or am I condemned to constantly (and mostly unnecessarily) checking "Preferences>Accounts" to see what I have enetered there?Thanks for replying.
What is the "compose window" to which you are both referring? I could find no reference to such a thing in the Mail menus or Help.
Do you mean the "Composing" pane in the Preferences? I don't see what either one of you is referring to there, but I did notice there something that could function as an awkward workaround: If I click on the "Automatically CC myself" box in Preferences>Composing, then when I start a new email, my email address is displayed in the "CC" field -- and luckily, Mail allows me to then delete my email address out of the CC field, so I don't have to spam myself with duplicate copies of all my emails. This way, I can at least briefly see what email address I'm using, before I delete it from the CC field. Pretty awkward and unnecessarily laborious, however -- still not a perfect solution.
Or, by "composing window," are you referring to an outgoing email? As I said in my original comment, I do see what Ernie called "a small box with lines and an arrow at the bottom left of the header box." This is what I had to say about it:
+"In the "Customize..." button to the left of the Subject field in outgoing messages, one has the option to add as default outgoing message fields "cc," "bcc," "Reply-To," and "Subject," but none of those are what I want. It allows one to also view the address of the mail server, but that also is not what I'm looking for. What I want is to see my outgoing email address. And nowhere is there an option in the Preferences to turn this on. (At least as far as I could tell.)"+
In other words, when Ernie says, "click the box beside From," I can't do that -- because there is no such option. That's the whole problem in the first place. If there was a "From" field beside which I could click a box to make it appear, I would have done so! But there is no "From" field in the "Customize" section of the "small box with lines and an arrow at the bottom left of the header box."
I find it completely mystifying that both of you seem to be able to see a "From" field available to be added to the header of outgoing emails, yet no such option is available to me in Mail. What possibly could be causing this? 10.6.4 is freshly installed on my machine, and Mail seems brand new and uncorrupted. And I'm using Mail 4.3, the latest version.
Are you saying that everyone else can see an option to have a "From" field in their outgoing messages, but I uniquely don't? Very very very strange. -
How to pass soap header variable for invoking siebel service in BPEL
Hi,
I am invoking siebel service in soa composite. siebel service have header variables username/password and session type. I have created global variable (message type) in BPEL anddeclare same in messages port in siebel wsdl. after that I passed the username/password and session type as hard coded in assign activity. I have deployed and tested this but, I have an exception like javax.xml.ws.soap.SOAPFaultException: Error Code: 10944642 Error Message: Error: Inbound SOAP Message - Session Token is missing or invalid or has expired
Can you please help on this..Hi,
check this thread
http://help.sap.com/saphelp_nw04/helpdata/en/71/bcf3bf2ed7e142a5011b43c288f08c/content.htm
HTTP Header parameters in iView.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/bc-jas/~form/handler
May help you
Regards,
RK -
How to view GPS Heading in Metadata
Hey all,
I need to review the GPS heading informations in my images for a project. anyone know a mac solution to view the data?
I've installed already the plug-in via
http://regex.info/blog/lightroom-goodies/gps
but it does not show the heading either
thanks
Dakota
Message was edited by: Dakota73Thanks John, I've checked it out and installed all what was needed, when trying to customize it, I gave up. too complex for me. Need something to easy to use. didn't think it gets so hard to just read that header info...
Maybe you are looking for
-
My documents are not syncing with iCloud.
Can anyone give me another solution to resetting my documents and data on icloud? I have not been able to sync any new docs created on my macbook pro for a couple weeks. I have tried resetting my data but they it tells me that there was a problem and
-
Making a Time Machine Backup from a networked computer
I have two identical macbook pro laptops with identical os Mac OS X 10.6.7 (10J869) Macbook one has a frozen screen from a bad logic card. This macbook never had time machine implimented. Macbook two is now tied to Macbook one via firewire and I can
-
What's a good external keyboard for MBP
Given that the MBP keyboard is so inadequate and Apple is seemingly too stubborn to give us a good one, an external keyboard is mandatory. However, I'm not sure what's good in the Apple world. There is, of course, the Apple keyboards and I'm going to
-
Saving form with content (end user)
I have created a form using AdobeLiveCycle Designer. Everything seams to work when I tested it... However, When I send it for someone to fill out, she wanted to save a copy for her records with the data included. I was able to do a simple "save as" t
-
HELP! Mac Pro is overheating.
I recently bought a new desk. It's an L-shape that has a built-in cabinet for the computer tower. I put the Mac Pro in there and started some back-up tasks and left the house. When I came back the fan was on - and louder than I ever heard it before.