我在webLogic 12C中部署了一个
Spring引导应用程序.
10.4.4 403禁止
服务器了解该请求,但拒绝履行该请求.授权不会有帮助,请求不能重复.如果请求方法不是HEAD,并且服务器希望公开为什么请求尚未实现,则应该描述拒绝实体的原因.当服务器不希望明确地显示请求被拒绝的原因,或者没有其他响应适用时,通常使用此状态代码.
我想知道有人可以帮忙吗
解决方法
我审查了您的代码,并在此类代码中看到了一个问题:
https://github.com/purrox/Spring-example/blob/master/src/main/java/hello/Application.java
https://github.com/purrox/Spring-example/blob/master/src/main/java/hello/Application.java
你正在做正确的(如SpringBoot文档中定义的),但它似乎有一个Weblogic12C的错误(或者也许是对标准的解释).似乎Weblogic12C搜索实现WebApplicationInitializer DIRECTLY的类.注意你的代码如何扩展SpringBootServletInitializer(它实现WebApplicationInitializer). Weblogic12C似乎并不喜欢它.因此,最简单的方法是使您的Application类实现WebApplicationInitializer.所以,改这行:
public class Application extends SpringBootServletInitializer {
到这个:
public class Application extends SpringBootServletInitializer implements WebApplicationInitializer {
注意:一旦修复了上面的内容,您将遇到另一个Weblogic12C部署问题:“java.lang.IllegalArgumentException:LoggerFactory不是Logback LoggerContext,但Logback位于类路径上”.要修复其他问题,请创建一个新文件src / main / webapp / WEB-INF / weblogic.xml并将其中的内容放入其中:
<?xml version="1.0" encoding="UTF-8"?> <wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd"> <wls:weblogic-version>12.1.1</wls:weblogic-version> <wls:context-root>helloApp</wls:context-root> <wls:container-descriptor> <wls:prefer-application-packages> <wls:package-name>org.slf4j.*</wls:package-name> </wls:prefer-application-packages> </wls:container-descriptor> </wls:weblogic-web-app>