我们在没有SSL的内部网络中有一个weblogic服务器。要访问该应用程序,apache服务器作为反向代理安装,并且还具有配置SSL。可以通过endpoint.publish(地址)部署Web服务,如果访问URL是内部的,则该地址是从httpservletrequest.getRequestURL()获取的。但如果访问URL是代理URL,则失败并抛出以下异常。有没有想过通过代理网址发布它?
weblogic.wsee.server.ServerURLNotFoundException: Cannot resolve URL for protocol http/https
at weblogic.wsee.server.ServerUtil.getHTTPServerURL(ServerUtil.java:211)
at weblogic.wsee.server.ServerUtil.getServerURL(ServerUtil.java:150)
at weblogic.wsee.server.ServerUtil.getServerURL(ServerUtil.java:137)
at weblogic.wsee.jaxws.spi.WLSEndpoint.calculatePublicAddressFromEndpointAddress(WLSEndpoint.java:335)
at weblogic.wsee.jaxws.spi.WLSEndpoint.publish(WLSEndpoint.java:207)
答案 0 :(得分:0)
根据Oracle KM:安全WebService调用通过Web服务器(APACHE)插件抛出CAN NOT RESOLVE URL for PROTOCOL HTTP / HTTPS。 (Doc ID 1598617.1)
这是产品错误8358398.对于wls 10.3.0到10.3.2,您需要为此BUG应用补丁并设置-Dweblogic.wsee.useRequestHost=true
块引用
在你的JAVA_OPTIONS中。
对于10.3.3及更高版本,您无需应用补丁。您只能将上面的标志设置为true。