bereitstellen wir haben einen Weblogic-Server im internen Netzwerk ohne SSL. Um auf die Anwendung zuzugreifen, wird der Apache-Server als Reverse-Proxy installiert und verfügt auch über SSL konfigurieren. Es ist in Ordnung, den Web-Service über endpoint.publish (Adresse) bereitzustellen, dass die Adresse von httpservletrequest.getRequestURL() abgerufen wird, wenn die Zugriffs-URL intern ist. Aber fehlgeschlagen und werfen Sie die folgende Ausnahme, wenn die Zugriffs-URL Proxy-URL ist. Irgendeine Idee, es über die Proxy-URL zu veröffentlichen?kann Web Service nicht über endpoint.publish() in Apache Reverseproxy env
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)
Ich debugge den Code und bemerkte, dass die Adresse "https: // proxy/app/ws? Wsdl" bei der endpoint.publish (Adresse) ist. Dann habe ich versucht, die URL zu ändern und http anstelle von https zu verwenden. Es klappt. Auch wenn der Proxy-Server und der Weblogic-Server sich in einem anderen Rechner befinden, funktioniert es trotzdem. Was ist der Grund? – shentang