当前位置: 首页 > 知识库问答 >
问题:

在Weblogic中部署Spring Boot应用程序

公羊渝
2023-03-14

在webLogic 12C中部署Spring boot应用程序时遇到问题。

10.4.4 403禁止服务器理解请求,但拒绝满足它。授权将无济于事,请求不应该重复。如果请求方法不是HEAD,并且服务器希望公开请求未被满足的原因,它应该在实体中描述拒绝的原因。当服务器不想透露请求被拒绝的确切原因时,或者当没有其他响应适用时,通常使用此状态代码。

我想知道是否有人能帮忙。

共有3个答案

微生新霁
2023-03-14

你需要在你的Hello. Application中添加"实现在WebApplication中初始化"。

这是多余的,因为它扩展了SpringBootServletPrializer,而SpringBootServletPrializer本身实现了WebApplication ationPrializer,然而,正如@Pierre指出的那样,weblogic需要一个类来直接实现它。

满雨石
2023-03-14

如果您打算使用多部分文件请求,您可能仍然会在部署war时发现问题。

问题的根源是OrderedCharacterEncodingFilter在HiddenHttpMethodFilter之后运行HiddenHttpMethodFilter在对请求调用getParameter时触发对请求正文的处理OrderedCharacterEncodingFilter然后运行并设置请求的编码。在处理请求体之后设置请求的编码是错误的,并且在WebLogic上,会导致请求失去对其所有多部分数据的跟踪。

解决方法是在应用程序中禁用字符编码过滤器。属性:

spring.http.encoding.enabled: false
梅庆
2023-03-14

我查看了您的代码,发现这类代码中存在一个问题:https://github.com/purrox/Spring-example/blob/master/src/main/java/hello/Application.java

你做得很正确(如SpringBoot文档中定义的),但Weblogic12C似乎有一个bug(或者可能是对标准的解释)。Weblogic12C似乎在搜索一个直接实现WebApplicationInitializer的类。注意您的代码是如何扩展SpringBootServletilizer(它实现了WebApplicationInitializer)的。Weblogic12C似乎不喜欢这样。因此,最简单的方法是让应用程序类实现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>
 类似资料:
  • 我正在尝试将一个简单的SpringBoot应用程序转换为部署在WebLogic中。它在buildin TomCat服务器上运行良好。然后对其进行更改并创建一个新的war文件。当我尝试部署war文件时,我得到这个错误。 web.xml的Servlet初始值设定项 application.java文件

  • } **pom.xml:** https://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.0 org.springframework.boot spring-boot-starter-parent 2.2.0.release de.basf.ap.Agrilog support-service 1.0.0 support-service war Agrilo

  • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

  • 我正在尝试在weblogic application server 10.3中部署一个web应用程序 部署后,当我尝试激活更改时,我收到以下异常 我知道包含以下类org/apache/Commons/digester/Digester的jar文件在服务器运行时中丢失。 我在$DOMAIN/lib中添加了这个jar,并重新启动了weblogic服务器。部署后,我收到了相同的错误。 请告知。

  • 我有一个在Weblogic服务器上运行的web应用程序,我必须修改它。为此,我安装了带有集成Weblogic 10.3服务器的JDeveloper 11g R2。 应用程序作为maven项目出现-我已将maven项目导入JDeveloper。但是尽管我可以编译,但从JDeveloper中部署的尝试失败了(服务器会抱怨缺少第3方类)。 然而,使用maven,我可以成功构建一个war包并将其部署到集成

  • 当我尝试在WebLogic 12c上部署应用程序时,会出现此异常。 在这个应用程序中,我有一个简单的jax-ws-Web服务。有人能帮我吗? 问候弗朗西斯科