My Oracle Support Banner

Client Receives Incorrect Port (HTTP 403) During WS-AT Registration When WLS Admin Port Is Enabled (Doc ID 1434323.1)

Last updated on OCTOBER 13, 2020

Applies to:

Oracle WebLogic Server - Version 10.3.4.0.1 to 10.3.4.0.1
Information in this document applies to any platform.

Symptoms

On : 10.3.4.0 version, WLS-WebServices

Having two WLS domains and an application using Web Services and Atomic Transactions with the client and web service in a different domain, and the WLS administration port enabled, we get errors avoiding the possibility of using this type of configuration in a WLS environment with Web Services and Atomic Transactions.

<hostname.domain>
client_domain
Client Application => WSAT_Transfer


<hostname.domain>
server_domain
Web Service => WSAT_TransferService

 

NOTE:  The WebLogic Server names and port numbers; WebService application names; others used in this article represent a fictitious sample names that made up as example.  Any similarity to actual code, is purely coincidental and not intended in any other manner.
Additionally, tempuri.org is a test default namespace URI used by Microsoft development products, used here in this article as an example WSDL.



Results:

ADMIN PORT DISABLED

Request

POST http://<wls_hostname.domain>:8001/WSAT_TransferService/WSHttpBindingIService HTTP/1.1
Content-type: text/xml;charset="utf-8"
Soapaction: "http://tempuri.org/WSAT_TransferService/listAccountRequest"
Accept: text/xml, multipart/related, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
User-Agent: Oracle JAX-WS 2.1.5
Host: xx.xxx.xx.xxx:8081
Connection: Keep-Alive
Content-Length: 2670
X-Forwarded-For: <wls_ip>

<?xml version = '1.0' encoding = 'UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://xx.xxx.xx.xxx:8081/WSAT_TransferService/WSHttpBindingIService</wsa:To>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://tempuri.org/WSAT_TransferService/listAccountRequest</wsa:Action>
<ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</ReplyTo>
<FaultTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</FaultTo>
<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:....</wsa:MessageID>
<work:WorkContext xmlns:work="http://oracle.com/weblogic/soap/workarea/">....</work:WorkContext>
<CoordinationContext xmlns:ns3="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns2="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns="http://schemas.xmlsoap.org/ws/2004/10/wscoor" ns3:mustUnderstand="1">
<Identifier>urn:uuid:...</Identifier>
<Expires>900000</Expires>
<CoordinationType>http://schemas.xmlsoap.org/ws/2004/10/wsat</CoordinationType>
<RegistrationService>
<ns2:Address>http://<wls_ip>:8001/wls-wsat/RegistrationPortTypeRPC</ns2:Address>
<ns2:ReferenceParameters>
<wls-wsat:txId xmlns:wls-wsat="http://weblogic.wsee.wstx.wsat/ws/2008/10/wsat">....</wls-wsat:txId>
<wls-wsat:routing xmlns:wls-wsat="http://weblogic.wsee.wstx.wsat/ws/2008/10/wsat">soa_server1</wls-wsat:routing>
</ns2:ReferenceParameters>
</RegistrationService>
</CoordinationContext>
</S:Header>
<S:Body>
<ns2:listAccount xmlns:ns2="http://tempuri.org/"/>
</S:Body>
</S:Envelope>



Response

HTTP/1.1 200 OK
Date: Fri, 14 Oct 2011 21:17:13 GMT
X-Transfer-Encoding: chunked
Content-Type: text/xml;charset="utf-8"
X-Powered-By: Servlet/2.5 JSP/2.1

<?xml version = '1.0' encoding = 'UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.w3.org/2005/08/addressing/anonymous</wsa:To>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://tempuri.org/WSAT_TransferService/listAccountResponse</wsa:Action>
<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:...</wsa:MessageID>
<wsa:RelatesTo xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:...</wsa:RelatesTo>
</S:Header>
<S:Body>
<ns2:listAccountResponse xmlns:ns2="http://tempuri.org/">
<return><P align="left">Remote Bank Account</P><TABLE border="1"><TR><TH>Acct no</TH><TH>Amount</TH></TR><TR><TD align="right">1</TD><TD align="right">300</TD></TR></TABLE></return>
</ns2:listAccountResponse>
</S:Body>
</S:Envelope>


All is working fine.


ERROR

AS SOON AS THE ADMIN PORT IS ENABLED

Request:

POST http://<wls_hostname.domain>:8001/WSAT_TransferService/WSHttpBindingIService HTTP/1.1
Content-type: text/xml;charset="utf-8"
Soapaction: "http://tempuri.org/WSAT_TransferService/listAccountRequest"
Accept: text/xml, multipart/related, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
User-Agent: Oracle JAX-WS 2.1.5
Host: xx.xxx.xx.xxx:8081
Connection: Keep-Alive
Content-Length: 2666
X-Forwarded-For: <wls_ip>

<?xml version = '1.0' encoding = 'UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://xx.xxx.xx.xxx:8081/WSAT_TransferService/WSHttpBindingIService</wsa:To>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://tempuri.org/WSAT_TransferService/listAccountRequest</wsa:Action>
<ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</ReplyTo>
<FaultTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</FaultTo>
<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:....</wsa:MessageID>
<work:WorkContext xmlns:work="http://oracle.com/weblogic/soap/workarea/">.....</work:WorkContext>
<CoordinationContext xmlns:ns3="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns2="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns="http://schemas.xmlsoap.org/ws/2004/10/wscoor" ns3:mustUnderstand="1">
<Identifier>urn:uuid:....</Identifier>
<Expires>900000</Expires>
<CoordinationType>http://schemas.xmlsoap.org/ws/2004/10/wsat</CoordinationType>
<RegistrationService>
<ns2:Address>http://<wls_ip>:8001/wls-wsat/RegistrationPortTypeRPC</ns2:Address>
<ns2:ReferenceParameters>
<wls-wsat:txId xmlns:wls-wsat="http://weblogic.wsee.wstx.wsat/ws/2008/10/wsat">BEA1-01493B9AEA703FFFE09A</wls-wsat:txId>
<wls-wsat:routing xmlns:wls-wsat="http://weblogic.wsee.wstx.wsat/ws/2008/10/wsat">soa_server1</wls-wsat:routing>
</ns2:ReferenceParameters>
</RegistrationService>
</CoordinationContext>
</S:Header>
<S:Body>
<ns2:listAccount xmlns:ns2="http://tempuri.org/"/>
</S:Body>
</S:Envelope>




Response:

HTTP/1.1 500 Internal Server Error
Date: Fri, 14 Oct 2011 21:22:23 GMT
X-Transfer-Encoding: chunked
Content-Type: text/xml;charset="utf-8"
X-Powered-By: Servlet/2.5 JSP/2.1

<?xml version = '1.0' encoding = 'UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.w3.org/2005/08/addressing/anonymous</wsa:To>
<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.w3.org/2005/08/addressing/fault</wsa:Action>
<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:....</wsa:MessageID>
<wsa:RelatesTo xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:....</wsa:RelatesTo>
</S:Header>
<S:Body>
<S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
<faultcode>S:Server</faultcode>
<faultstring>The server sent HTTP status code 403: Forbidden: http://<wls_ip>:8001/wls-wsat/RegistrationPortTypeRPC</faultstring>
<detail>
<ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/" class="com.sun.xml.ws.client.ClientTransportAccessException" note="To disable this feature, set com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property to false">
<message>The server sent HTTP status code 403: Forbidden: http://<wls_ip>:8001/wls-wsat/RegistrationPortTypeRPC</message>
<ns2:stackTrace>
<ns2:frame class="com.sun.xml.ws.transport.http.client.HttpTransportPipe" file="HttpTransportPipe.java" line="340" method="getClientTransportException"/>
<ns2:frame class="com.sun.xml.ws.transport.http.client.HttpTransportPipe" file="HttpTransportPipe.java" line="328" method="checkStatusCodeOneway"/>
<ns2:frame class="com.sun.xml.ws.transport.http.client.HttpTransportPipe" file="HttpTransportPipe.java" line="230" method="process"/>
<ns2:frame class="com.sun.xml.ws.transport.http.client.HttpTransportPipe" file="HttpTransportPipe.java" line="124" method="processRequest"/>
<ns2:frame class="com.sun.xml.ws.transport.DeferredTransportPipe" file="DeferredTransportPipe.java" line="121" method="processRequest"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="866" method="__doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="815" method="_doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="778" method="doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="680" method="runSync"/>
<ns2:frame class="com.sun.xml.ws.client.Stub" file="Stub.java" line="272" method="process"/>
<ns2:frame class="com.sun.xml.ws.client.sei.SEIStub" file="SEIStub.java" line="153" method="doProcess"/>
<ns2:frame class="com.sun.xml.ws.client.sei.SyncMethodHandler" file="SyncMethodHandler.java" line="115" method="invoke"/>
<ns2:frame class="com.sun.xml.ws.client.sei.SyncMethodHandler" file="SyncMethodHandler.java" line="95" method="invoke"/>
<ns2:frame class="com.sun.xml.ws.client.sei.SEIStub" file="SEIStub.java" line="136" method="invoke"/>
<ns2:frame class="$Proxy404" line="unknown" method="registerOperation"/>
<ns2:frame class="sun.reflect.NativeMethodAccessorImpl" file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
<ns2:frame class="sun.reflect.NativeMethodAccessorImpl" file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
<ns2:frame class="sun.reflect.DelegatingMethodAccessorImpl" file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
<ns2:frame class="java.lang.reflect.Method" file="Method.java" line="597" method="invoke"/>
<ns2:frame class="weblogic.wsee.jaxws.spi.ClientInstanceInvocationHandler" file="ClientInstanceInvocationHandler.java" line="84" method="invoke"/>
<ns2:frame class="$Proxy387" line="unknown" method="registerOperation"/>
<ns2:frame class="weblogic.wsee.wstx.wsc.v10.client.RegistrationProxyBuilderImpl$RegistrationProxyImpl" file="RegistrationProxyBuilderImpl.java" line="65" method="asyncRegister"/>
<ns2:frame class="weblogic.wsee.wstx.wsc.v10.client.RegistrationProxyBuilderImpl$RegistrationProxyImpl" file="RegistrationProxyBuilderImpl.java" line="46" method="asyncRegister"/>
<ns2:frame class="weblogic.wsee.wstx.wsc.common.client.RegistrationProxyBuilder$RegistrationProxyF" file="RegistrationProxyBuilder.java" line="96" method="registerOperation"/>
<ns2:frame class="weblogic.wsee.wstx.wsat.tube.WSATServerHelper" file="WSATServerHelper.java" line="108" method="register"/>
<ns2:frame class="weblogic.wsee.wstx.wsat.tube.WSATServerHelper" file="WSATServerHelper.java" line="79" method="processIncomingTransaction"/>
<ns2:frame class="weblogic.wsee.wstx.wsat.tube.WSATServerHelper" file="WSATServerHelper.java" line="34" method="doHandleRequest"/>
<ns2:frame class="weblogic.wsee.wstx.wsat.tube.WSATServerTube" file="WSATServerTube.java" line="87" method="processRequest"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="866" method="__doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="815" method="_doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="778" method="doRun"/>
<ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="680" method="runSync"/>
<ns2:frame class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java" line="403" method="process"/>
<ns2:frame class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit" file="HttpAdapter.java" line="532" method="handle"/>
<ns2:frame class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java" line="253" method="handle"/>
<ns2:frame class="com.sun.xml.ws.transport.http.servlet.ServletAdapter" file="ServletAdapter.java" line="140" method="handle"/>
<ns2:frame class="weblogic.wsee.jaxws.WLSServletAdapter" file="WLSServletAdapter.java" line="171" method="handle"/>
<ns2:frame class="weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke" file="HttpServletAdapter.java" line="708" method="run"/>
<ns2:frame class="weblogic.security.acl.internal.AuthenticatedSubject" file="AuthenticatedSubject.java" line="363" method="doAs"/>
<ns2:frame class="weblogic.security.service.SecurityManager" file="SecurityManager.java" line="146" method="runAs"/>
<ns2:frame class="weblogic.wsee.util.ServerSecurityHelper" file="ServerSecurityHelper.java" line="103" method="authenticatedInvoke"/>
<ns2:frame class="weblogic.wsee.jaxws.HttpServletAdapter$3" file="HttpServletAdapter.java" line="311" method="run"/>
<ns2:frame class="weblogic.wsee.jaxws.HttpServletAdapter" file="HttpServletAdapter.java" line="336" method="post"/>
<ns2:frame class="weblogic.wsee.jaxws.JAXWSServlet" file="JAXWSServlet.java" line="95" method="doRequest"/>
<ns2:frame class="weblogic.servlet.http.AbstractAsyncServlet" file="AbstractAsyncServlet.java" line="99" method="service"/>
<ns2:frame class="javax.servlet.http.HttpServlet" file="HttpServlet.java" line="820" method="service"/>
<ns2:frame class="weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction" file="StubSecurityHelper.java" line="227" method="run"/>
<ns2:frame class="weblogic.servlet.internal.StubSecurityHelper" file="StubSecurityHelper.java" line="125" method="invokeServlet"/>
<ns2:frame class="weblogic.servlet.internal.ServletStubImpl" file="ServletStubImpl.java" line="300" method="execute"/>
<ns2:frame class="weblogic.servlet.internal.TailFilter" file="TailFilter.java" line="26" method="doFilter"/>
<ns2:frame class="weblogic.servlet.internal.FilterChainImpl" file="FilterChainImpl.java" line="56" method="doFilter"/>
<ns2:frame class="oracle.security.jps.ee.http.JpsAbsFilter$1" file="JpsAbsFilter.java" line="111" method="run"/>
<ns2:frame class="oracle.security.jps.util.JpsSubject" file="JpsSubject.java" line="313" method="doAsPrivileged"/>
<ns2:frame class="oracle.security.jps.ee.util.JpsPlatformUtil" file="JpsPlatformUtil.java" line="413" method="runJaasMode"/>
<ns2:frame class="oracle.security.jps.ee.http.JpsAbsFilter" file="JpsAbsFilter.java" line="94" method="runJaasMode"/>
<ns2:frame class="oracle.security.jps.ee.http.JpsAbsFilter" file="JpsAbsFilter.java" line="161" method="doFilter"/>
<ns2:frame class="oracle.security.jps.ee.http.JpsFilter" file="JpsFilter.java" line="71" method="doFilter"/>
<ns2:frame class="weblogic.servlet.internal.FilterChainImpl" file="FilterChainImpl.java" line="56" method="doFilter"/>
<ns2:frame class="oracle.dms.servlet.DMSServletFilter" file="DMSServletFilter.java" line="136" method="doFilter"/>
<ns2:frame class="weblogic.servlet.internal.FilterChainImpl" file="FilterChainImpl.java" line="56" method="doFilter"/>
<ns2:frame class="weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction" file="WebAppServletContext.java" line="3715" method="wrapRun"/>
<ns2:frame class="weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction" file="WebAppServletContext.java" line="3681" method="run"/>
<ns2:frame class="weblogic.security.acl.internal.AuthenticatedSubject" file="AuthenticatedSubject.java" line="321" method="doAs"/>
<ns2:frame class="weblogic.security.service.SecurityManager" file="SecurityManager.java" line="120" method="runAs"/>
<ns2:frame class="weblogic.servlet.internal.WebAppServletContext" file="WebAppServletContext.java" line="2277" method="securedExecute"/>
<ns2:frame class="weblogic.servlet.internal.WebAppServletContext" file="WebAppServletContext.java" line="2183" method="execute"/>
<ns2:frame class="weblogic.servlet.internal.ServletRequestImpl" file="ServletRequestImpl.java" line="1454" method="run"/>
<ns2:frame class="weblogic.work.ExecuteThread" file="ExecuteThread.java" line="209" method="execute"/>
<ns2:frame class="weblogic.work.ExecuteThread" file="ExecuteThread.java" line="178" method="run"/>
</ns2:stackTrace>
</ns2:exception>
</detail>
</S:Fault>
</S:Body>
</S:Envelope>

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.