OSB http Header Problem
Hello all,
(I hope I'm right here with my Oracle Service Bus problem)
I have a Oracle Service Bus Proxy Service, that calls a Business Service (not in my control).
That business service is somehow crap, cause it doesn't respond correctly (in sense of http protocol):
POST / HTTP/1.1
Content-Type: text/xml; charset=utf-8
User-Agent: Java1.6.0_05
Host: somehost.net:8080
Accept: text/html, image/gif, image/jpeg, */*; q=.2
Connection: Keep-Alive
0093
<?xml version="1.0" encoding="UTF-8"?>
<somePayload/>
0000
*<TheResponse/>*
<TheResponse/> is all i get from that service. No http header..
My Proxy service doesn't like responses with no HTTP/1.1 200 OK
and returns an error (although its a correct answer.. from the service)
Is there a posibility to avoid this error and get the plain response instead?
Thanx in advance
Pat
You're right, that service doesn't respond correctly as defined by HTTP. I don't think there is an out of the box feature in OSB you could use to overcome this.
However, you can possibly write your own transport implementation as described here:
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/transportsdk/architecture.html
There's also sample implementation that could be useful:
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/transportsdk/example.html
Similar Messages
-
Hello @all
I�m new to Open ESB and NetBeans.
Does anybody has an idea how to put HTTP-Header to the BPEL-Process?
I have to call a WebService (from BPEL) which expects user authentication (sessionId) in the HTTP-Header . How do I do that? Do I have to modify my WSDL-File?
Thanks for your posts in advanceYou would have already defined your WSDL accommodating this requirement. If not, then yes, you might have to change your wsdl.
Assuming you are sending the user info all the way from the BPEL process and assuming soap-http protocol. Typically the way i see this done is, you define a wsdl message with the parts that correspond to your business logic and parts that you would use in the "soap headers". In the BPEL it is always "business as usual" you deal with the abstract wsdl message. It would be developers responsibility to fill the wsdl message parts correctly. Once this message goes through the soap-http BC, it would be the BC's job to then put things as required by the HTTP protocol.
hope that helps,
Kiran B. -
OSB http header X-Forwarded-For
Hi,
He have the next situation:
Balancer (F5) -> OWSM -> ProxyOSB
Balancer put in the request, the header 'X-Forwarded-For', to know the client IP. I have tested that between the balancer and one node of the osb cluster the header is present.
I have extend OWSM with a custom policy, and the proxy has that policy. The problem is than in the custom policy the header 'X-Forwarded-For' isn´t present
GetAllHeaders and process WS-security headers are enabled.
We have the same situation is SOASuite and its work fine using the same policy.
Any help? Thanks in advanceexonit,
It appears that in the past few days you have not received a response to your
posting. That concerns us, and has triggered this automated reply.
Has your problem been resolved? If not, you might try one of the following options:
- Visit http://support.novell.com and search the knowledgebase and/or check all
the other self support options and support programs available.
- You could also try posting your message again. Make sure it is posted in the
correct newsgroup. (http://forums.novell.com)
Be sure to read the forum FAQ about what to expect in the way of responses:
http://forums.novell.com/faq.php
If this is a reply to a duplicate posting, please ignore and accept our apologies
and rest assured we will issue a stern reprimand to our posting bot.
Good luck!
Your Novell Product Support Forums Team
http://support.novell.com/forums/ -
OSB HTTP Header "Expect: 100-Continue"
Hello!
Client (.Net) call web-service on osb (ProxyService).
Http request have header "Expect: 100-Continue".
This request "freeze" the server and bus don't send response.
How it fix?
OSB 11g, WebLogic 10.3.3
ThanksI can't change client side.
Server log:
<Notice> <Diagnostics> <LAM-ESB> <AdminServer> <[STANDBY] ExecuteThread: '28' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <f3cc0ecdd0498662:-6b8c6571:12b81234e70:-7ff1-0000000000000260> <1286367032826> <BEA-320068> <Watch 'StuckThread' with severity 'Notice' on server 'AdminServer' has triggered at 06.10.2010 16:10:32 MSD. Notification details:
WatchRuleType: Log
WatchRule: (SEVERITY = 'Error') AND (MSGID = 'BEA-000337')
WatchData: DATE = окт 6, 2010 4:10:31 PM MSD SERVER = AdminServer MESSAGE = [STUCK] ExecuteThread: '23' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "645" seconds working on the request "weblogic.servlet.internal.ServletRequestImpl@5e3e203[
POST /LAM_ESB/ProxyServices_v1/ReportServiceWS HTTP/1.1
SOAPAction: http://lam.org/esb/report/v1/SaveReportParameters
Content-Type: text/xml
Content-Length: 595
Expect: 100-continue
Connection: Keep-Alive
]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-141 "[STUCK] ExecuteThread: '23' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, suspended, priority=1, DAEMON> {
weblogic.xml.query.tokens.common.BEA_PIToken.create(BEA_PIToken.java:32)
weblogic.xml.query.tokens.BasicTokenFactory.createPI(BasicTokenFactory.java:769)
weblogic.xml.query.tokens.BasicTokenFactory.createPI(BasicTokenFactory.java:730)
weblogic.xml.query.parsers.StAXCursorAdaptor$LiteToken.next(StAXCursorAdaptor.java:257)
weblogic.xml.query.parsers.StAXCursorAdaptor.fetchNext(StAXCursorAdaptor.java:103)
weblogic.xml.query.iterators.GenericIterator.next(GenericIterator.java:102)
com.bea.wli.common.xquery.iterators.DocumentFilterIterator.fetchNext(DocumentFilterIterator.java:57)
weblogic.xml.query.xdbc.iterators.DefaultTokenIterator.next(DefaultTokenIterator.java:112)
com.bea.wli.common.xquery.iterators.ExpandTopLevelFullNodes.fetchNext(ExpandTopLevelFullNodes.java:36)
weblogic.xml.query.xdbc.iterators.DefaultTokenIterator.next(DefaultTokenIterator.java:112)
com.bea.wli.sb.context.SoapEnvelopeBodySource.skipToBodyAndValidate(LargeSOAPMessageImpl.java:827)
com.bea.wli.sb.context.SoapEnvelopeBodySource.<init>(LargeSOAPMessageImpl.java:777)
com.bea.wli.sb.context.BindingOperationMapper$OptimizedQNameMapper.computeOperationName(BindingOperationMapper.java:524)
com.bea.wli.sb.context.OperationVariable.getTypedValue(OperationVariable.java:40)
com.bea.wli.sb.context.MessageContextImpl.getOperation(MessageContextImpl.java:165)
com.bea.wli.sb.context.BindingLayerImpl.addRequest(BindingLayerImpl.java:221)
com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:39)
com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:350)
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:143)
com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:572)
com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:252)
com.bea.wli.sb.transports.http.generic.RequestHelperBase$1.run(RequestHelperBase.java:154)
com.bea.wli.sb.transports.http.generic.RequestHelperBase$1.run(RequestHelperBase.java:152)
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:350)
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:143)
com.bea.wli.sb.transports.http.generic.RequestHelperBase.securedInvoke(RequestHelperBase.java:146)
com.bea.wli.sb.transports.http.generic.RequestHelperBase.service(RequestHelperBase.java:72)
com.bea.wli.sb.transports.http.wls.HttpTransportServlet.service(HttpTransportServlet.java:106)
weblogic.servlet.FutureResponseServlet.service(FutureResponseServlet.java:24)
javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:224)
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:108)
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:206)
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3656)
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:117)
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2204)
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2126)
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1412)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:198)
weblogic.work.ExecuteThread.run(ExecuteThread.java:165)
SUBSYSTEM = WebLogicServer USERID = <WLS Kernel> SEVERITY = Error THREAD = [ACTIVE] ExecuteThread: '22' for queue: 'weblogic.kernel.Default (self-tuning)' MSGID = BEA-000337 MACHINE = LAM-ESB TXID = CONTEXTID = f3cc0ecdd0498662:-6b8c6571:12b81234e70:-7ff1-000000000000025e TIMESTAMP = 1286367031998
WatchAlarmType: AutomaticReset
WatchAlarmResetPeriod: 600000
>Thanks -
SOAP Receiver - HTTP header problem
Hi,
Scenario: IDOC - - XI - - SOAP(webservice).
Third party is asking for missing "/" (path?) in header after "POST". Following is the message received by third party. How to override this header to put "/" after POST? Please help.
POST HTTP/1.0
Accept: /
Host: 100.10.2.5:9092
User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505
Authorization: Basic Z2hydHNvYXA6bm92ZWxs
content-id: <soap-48E034BD9F5B3308E1000000876CF529@sapcom>
Content-Type: text/xml; charset=utf-8
Content-Length: 313
SOAPACTION: "#batchRequest"
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>
<SOAP:Header/>
<SOAP:Body>
<ns0:cvgtransaction xmlns:ns0='http://abc.com/xi/Novell' event='modify' workforceID='1' type='employee'>
<attribute name='WWID' operation='replace'>1234567</attribute>
</ns0:cvgtransaction>
</SOAP:Body>
</SOAP:Envelope>Hi!
with XI standard tools you have no chance to manipulate the soap envelope created by the XI. You have to configure your soap receiver communication channel to not create a soap envelope "Do not use SOAP envelope") and then you use e.g. a XSLT mapping to create a soap envelope by yourself.
Regards,
Volker -
OSB Http Transport Custom Authenticatiion (X509 in Http header)
Hello!
I'm trying to solve this case. We have F5 Load balancer that terminates SSL Connections From client to the OSB. When terminating the SSL, the LB adds the clients certificate into headers of the Http request going to OSB.
OSb proxy service is configured to use custom authentication with token type X509 (only choice in the OSB console).
What happens when I send the request to OSB, is that I get http code 401 (unauthorized) this error on server log:
####<Sep 27, 2011 3:08:05 PM EEST> <Error> <WliSbTransports> <appserver02> <MANSERV02> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1317125285598> <BEA-381327> <Transport-level custom token identity assertion failed
java.lang.ClassCastException: java.lang.String cannot be cast to [Ljava.security.cert.X509Certificate;
The HTTP header sent to OSB is in the messages below.
It has also been wihotu the BEGIN CERTIFICATE and END CERTIFICATE lines with same results.
Can somebody help me in:
a) Should the certificate be sent in what form from LB to OSB.
b) How should the OSB/WLS be configured for this to work?
OSB version is 10.3.1.
Request to the server is:
POST /prjTemplateService/ProxyServices/psvcHelloWolrdWSSSLInterface HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:#HelloWorldOperation"
User-Agent: Jakarta Commons-HttpClient/3.1
Host: <ip_here>
Content-Length: 459
SSLClientCertStatus: ok
SSLClientCertb64: -----BEGIN CERTIFICATE-----
MIICHDCCAYUCBE2sABcwDQYJKoZIhvcNAQEEBQAwVTELMAkGA1UEBhMCRkkxCzAJ
BgNVBAgTAkZJMQ4wDAYDVQQHEwVFc3BvbzEMMAoGA1UEChMDRVpaMQswCQYDVQQL
EwJUQzEOMAwGA1UEAxMFSnVzc2kwHhcNMTEwNDE4MDkxMDQ3WhcNMTEwNzI3MDkx
MDQ3WjBVMQswCQYDVQQGEwJGSTELMAkGA1UECBMCRkkxDjAMBgNVBAcTBUVzcG9v
MQwwCgYDVQQKEwNFWloxCzAJBgNVBAsTAlRDMQ4wDAYDVQQDEwVKdXNzaTCBnzAN
BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAvEPjEn3tvG3YuXlsLZnE7ZOKUJIF0Foy
c1hp+k7dyGUoHu3Phva7eVOO1cmHaGkFHkg+EnnK3+/Y58EMQAEwPOfQTj0/vSSk
cEx2X/2p2W7ACldJlYMxx2ZdFa1qaKTXtoieLy23/kJI+ZTfIoB+nmZiPRE9Hq8p
LTPlcMWVFnkCAwEAATANBgkqhkiG9w0BAQQFAAOBgQC3EZMQieOy4PFh+95R6W7/
3xaaRm/BzmEU/Wf9JweEwrnttdSmRKsxx9vSkADnD0J7jGO+koym5CWvJHbox4Sk
QMRPFaTOBRD4hzZeJMidds1LSzUm/QE9PXzjS/HLSjBBs5DmZfdR+uXPSFqTROkd
87R5veuPX5KeKQHs8iesTw==
-----END CERTIFICATE-----
SSLClientCertSN: 4d:ac:00:17
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:Hello:client">
<soapenv:Body>
<urn:HelloWorldRequest>
<urn:FirstName>Jolly</urn:FirstName>
<urn:Surname>Roger</urn:Surname>
</urn:HelloWorldRequest>
</soapenv:Body>
</soapenv:Envelope>
Response from OSB:
HTTP/1.1 401 Unauthorized
Connection: close
Date: Fri, 30 Sep 2011 08:32:33 GMT
Content-Length: 1518
Content-Type: text/html
X-Powered-By: Servlet/2.5 JSP/2.1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Draft//EN">
<HTML>
<HEAD>
<TITLE>Error 401--Unauthorized</TITLE>
<META NAME="GENERATOR" CONTENT="WebLogic Server">
</HEAD>
<BODY bgcolor="white">
<FONT FACE=Helvetica><BR CLEAR=all>
<TABLE border=0 cellspacing=5><TR><TD><BR CLEAR=all>
<FONT FACE="Helvetica" COLOR="black" SIZE="3"><H2>Error 401--Unauthorized</H2>
</FONT></TD></TR>
</TABLE>
<TABLE border=0 width=100% cellpadding=10><TR><TD VALIGN=top WIDTH=100% BGCOLOR=white><FONT FACE="Courier New"><FONT FACE="Helvetica" SIZE="3"><H3>From RFC 2068 <i>Hypertext Transfer Protocol -- HTTP/1.1</i>:</H3>
</FONT><FONT FACE="Helvetica" SIZE="3"><H4>10.4.2 401 Unauthorized</H4>
</FONT><P><FONT FACE="Courier New">The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials, then the 401 response indicates that authorization has been refused for those credentials. If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user SHOULD be presented the entity that was given in the response, since that entity MAY include relevant diagnostic information. HTTP access authentication is explained in section 11.</FONT></P>
</FONT></TD></TR>
</TABLE>
</BODY>
</HTML>>
by using Client Cert authentication I have to set HTTPS required to true.
>
Yes.
>
When I try to invoke this service with http request, it redirects to https service.
This actually just trashes the entire idea of terminating SSL in the load balancer.
>
Not necessarily. Although direct HTTP request to WebLogic is redirected to HTTPS enabled port, you can still use this settings with WebLogic plugin. I'm not aware of your deployment, but I use Apache plugin for WebLogic, terminate SSL on Apache and I'm still able to send requests authenticated by certificate from client through HTTPS.
I don't know about F5, but I guess there should be similar feature as well.
http://download.oracle.com/docs/cd/E12840_01/wls/docs103/cluster/load_balancing.html -
Problem setting Unicode (utf-8) in http header using tomcat
Hi:
I am trying to set a file name in utf-8 to http header using the following code:
response.setContentType("text/html; charset=utf-8");
response.setHeader("Content-disposition", "attachment; filename=解決.zip");
// I actually has file name in utf-8 here to set to the header, and I know that the name is correctly
// and I also looked into the response object MimeHeaders object and saw the head is correctly there
then write the content of zip file using ServletOutputStream.
The problem I have is that the file name is not displayed correctly when prompted to save or open in the pop up window next. I found out using Fiddler that the request header is wrong:
Content-disposition: attachment; filename=�zn��.zip
I am using Tomcat 5.0.28. Any idea how to get this working?
Thanks in advance!You are setting the charset for the content to be UTF-8. (That is why the method is called setContentType.) But HTTP headers are not part of the content and so that has no effect on the header.
The original specification for HTTP only allowed US-ASCII characters in headers. It is possible that more recent versions have features that allow for non-ASCII header data, but I don't know if that is the case or how you would use those features if they exist. -
Problem adding HTTP header to request
Hi all,
My company is wanting to access our Adobe Connect through our
SAP portal without requiring the user to stop and enter their Adobe
Connect password.
The documentation available says that this should be possible
using a combination of SAPSSOEXT (to interrogate the SAP ticket and
authenticate the user coming from the SAP portal) and HTTP header
authentication within Adobe Connect (by inserting the authenticated
username into a custom HTTP header).
However the problem is that I'm intending to use Java, but I
can't find any Java functionality that will allow me to add a
header into an HTTP request.
Has anyone done anything like this before? Any ideas on how
to go about it?
Thanks in advance,
DavidIn 10.1.3.5, there were several examples or samples in the Oracle BPEL folder. I think there were ones called HTTPGetService and HTTPPostService. You might check to see if they are still around.
-
HTTP header insertion problem with ACE
Hi
I try to configure the HTTP header insertion feature based on the action-list type modify http. Unfortunately it does not works.
The config looks like that
action-list type modify http TEST
header insert both Host header-value test:test.
I added this action-list to the correct policy-map.
When I checked the snifer output on the server side, there is no test value in the HTTP header.
I test the same feature based on the "insert-http" command in the policy-map and this one works.
Could anybody help me with this problem?
Thank you in advance
Regards
LucasHi Lukas,
Add a new parameter-map named PRMAP_PERST_REBLNC and add this to the policy map using command appl-parameter http advanced-options PRMAP_PERST_REBLNC as shown below:
action-list type modify http test-insert
header insert both My-Header header-value test
header insert both SSL header-value TRUE
policy-map type loadbalance http first-match HtppInsert
class class-default
serverfarm linux1-80
action test-insert
policy-map multi-match SLB1
class VIP-122-80
loadbalance vip inservice
loadbalance policy HtppInsert
loadbalance vip icmp-reply active
loadbalance vip advertise active
loadbalance vip advertise metric 1
connection advanced-options SetTos
appl-parameter http advanced-options PRMAP_PERST_REBLNC
parameter-map type http PRMAP_PERST_REBLNC
persistence-rebalance
Hope this will make all the packets are inserted with the http header not the first one only.
If it works then plz inform.
Kind Regards.
Sachin Garg -
Src IP HTTP header insertion problem
I have configured a vserver to loadbalance to 2 proxy servers over TCP port 8080.
I use a policy to insert the source ip address of the client workstation to be
inserted in the HTTP header.
We use the same vserver to loadbalance HTTPS traffix.
Appearantly the CSM also tries to insert the ip address when HTTPS traffic
is passing this vserver.
Is this a correct beheavior? How can I solve this one?
Thanks!
Regards WimActually mozilla lets you specify different ports for proxy http and proxy https.
Anyway, are the servers behing your CSM proxy servers ?
Do you have 'persistent rebalance" configured ?
If so, could you try to turn do 'no persistent rebalance' and see if that solves your problem.
Normally, https connection via a proxy are still done with HTTP connection with the request "CONNECT x.x.x.x:443" and the CSM should be able to inset the requested info.
But we need to avoid the CSM to inspect further packets as this would be ssl traffic -> so disable peristent rebalance.
Just an idea.
Regards,
Gilles. -
OSB - Content length http header missing from business service out message
Hi all,
I am having some diffuclty with a business service in OSB. I created the business service from the wsdl and created a regular proxy service that just routes to the business service. When i run the test console i get the below fault.
<faultcode>soapenv:Server</faultcode>
<faultstring>BEA-380000: Length Required</faultstring>
<detail>
After some debugging i find that the content length http header is missing from the outbound message the business process creates and sends to the acutal web service which sends back the http 411 fault.
Does anyone know how to configure the message flow of my proxy service to ensure that the outbound message sent from the business service contains that content length http header or any suggestions on how to fix this issue will be appreciated.
ThanksDisable the "Use Chunked Streaming Mode" property in HTTP Transport Configuration of your business service. By default it remains enabled.
Regards,
Anuj -
Problems with http header "Content-Location"
Does anyone know how to override the
"Content-Location" http header. We are having issues with search engines and this header being returned from Apache/oc4j. In a nutshell, I have a site that uses the
Struts framework, where the actual urls submitted would be for example
(http://mysite/home.do), where ".do" is just a servlet mapping. When we have
tried to follow the one link that has been spidered, it actually contains
the full path that appears in the "Content-Location" header (i.e.
http://mysite/web-inf/jsps/bogus.jsp) which in this case can't even be
accessed. The feedback we get from third-party utilities that try to spider
the site is that it is stopping because it has already indexed "bogus.jsp",
which in reality will always appear since it is a template, where the actual
urls will be different as is above.
Because the "Content-Location" header is being returned to any
client hitting the site, search engine spiders stop indexing at the first page because the value in "Content-Location" is the same.
Solutions tried:
mod_headers in Apache - have tried "Header unset"
HttpServletResponse.setHeader()
Any help would be appreciatedHi there,
i'm having a similar problem to this when trying to run some web page speed optimisation software...
i think the issue also causes problems with the Opera browser (although this may have been fixed in the latest version).
anybody any ideas how to stop the header being sent in the response?
many thanks,
Andy -
HTTP header and Filter: problem
Hi,
Let's suppose I need to check HTTP header values for some reason. I created a filter to analyze request information before passing it to servlet.
Anyway filter's method doFilter() takes a ServletRequest as a parameter, not HttpServletRequest, therefore I can't use HttpServletRequestWrapper and its method getHeaders(). ServletRequestWrapper does not have such a method. Casting from ServletRequest to HttpServletRequest won't work - Weblogic does not allow this.
Anyway I need to extract headers information for the request and I know for sure it is an HTTP request, of course.
Does anyone here know how can I extract header information in this case?Anyway filter's method doFilter() takes a
ServletRequest as a parameter, not
HttpServletRequest, therefore I can't use
HttpServletRequestWrapper and its method
getHeaders().However you are actually getting an HttpServletRequest object as your actual parameter, so just cast it to HttpServletRequest and do what you need to do. -
HTTP Header SOAPAction Problem
hi Everyone,
this is an extract of my test soap program:
SOAPConnectionFactory soapfactory = SOAPConnectionFactory.newInstance();
SOAPConnection connection = soapfactory.createConnection();
URL endpoint = new URL("http://url.asmx");
MessageFactory messagefactory = MessageFactory.newInstance();
SOAPMessage message = messagefactory.createMessage();
SOAPPart soapPart = message.getSOAPPart();
SOAPEnvelope envelope = soapPart.getEnvelope();
SOAPBody body = envelope.getBody();
soapFactory = SOAPFactory.newInstance();
Name insertNewUser = soapFactory.createName("insertNewUser","","namespace");
SOAPBodyElement bodyElement = body.addBodyElement(insertNewUser);
response = connection.call(message, endpoint);
response.writeTo(System.out);
connection.close();when i send the call, this the response from the server:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="...">
<soap:Body>
<soap:Fault>
<faultcode>soap:Client</faultcode>
<faultstring>Server did not recognize the value of HTTP Header SOAPAction:.</faultstring>
<detail />
</soap:Fault>
</soap:Body>
</soap:Envelope>
This is my question:
How can I set the HTTP Header SOAPAction?
Thanks.
RobertoHi try out the following code.
MimeHeaders hd = message.getMimeHeaders();
hd.addHeader("SOAPAction", "http://tempuri.org/HelloWorld");This will add the SOAP Action header to ur HTTP headers.
Regards
Aditya -
Howto connect with http to a socket - header problem?
Hi
i am writing a midlet that connects via http to a server with a java socket.
i can receive the data, but when i try to return data to the sockets outputstream,
the midlet doesnt receive it and waits endlessly.
Do i have to send a http header in the return connection?
Does anybody have another idea?
if not, how do i send the header and how should it look like?
Thanks for your help.
Mathisif you use a socket connection you need to talk the language the server understands, means, you need to send the commands that are specified in the rfc for the protocol you use. means, talking to a webserver is different that talking to pop3 server or to a ftp server.....
and, just for your information: sockets are not requiered in the j2me specification, means that not all vendors have implemented socket protocol into their devices. only required is http.
Maybe you are looking for
-
As a new user of FCPX, I have successfully edited and uploaded about 30 projects to Vimeo, most using multicam clips. I am using an external drive to store Events, etc, rather than my internal drive on my rMBP. This has worked well, although upload
-
Please recomend a good book to create art in Photoshop?
I want to learn to create menus and artwork in photoshop and Illustrator. I have seen many books but they tend to work with manipulating photographs. I want to create pictures and menus.... Can anyone recommend a good book (available in UK) to teach
-
Why won't previous years disappear off Library drop down list after delete
Problem: Why does "Early Photos" and the By Year breakdown of my photos still appear after I delete all of them off iPhoto? Background: I have iPhoto 6.06 with over 13,000 photos. I purchased an external hard drive and backed up the iPhoto Library to
-
Doe's AppleTV have any up-converting video capabilities and/or algorithms, as found in an up-converting DVD player. I find my up-converting DVD player is much better then my older dvd player. Before I invest in an AppleTV I would like to see this obv
-
Quality of printout is really bad
Hi Experts, I use the system command "print screen", to print my visual composer cockpit (only tables and forms, no charts). Unfortunately, the quality of some printout is really really bad. It seems that VC does some scaling, in order to fit the for