Weblogic服务器上的部署问题
我有两个应用程序,都是在Spring MVC中开发的。其中一个,即VDM正在部署,并且在本地和现场weblogic 12c服务器中都可以正常启动。但另一个,即VPORTAL正在部署,但不是从现场服务器开始。在启动服务时,它给出以下错误:Weblogic服务器上的部署问题
java.lang.NoSuchMethodError: org/slf4j/spi/LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
有趣的是,它在本地服务器上工作得很好。
我已经在这两个应用程序中做了一些一致的jar,但它没有帮助。 可以注意的一件事是,在VDM的classes目录中有一个文件,即log4j.xml,但VPORTAL中没有任何文件。我在进行更改后将其放入VPORTAL中,但它也没有帮助。 请帮忙!
这绝对是一个jar版本不匹配问题。你没有提到你放在WEB-INF \ lib文件夹下的slf4j-api jar的版本。我怀疑它与WLS 12c中的版本不同。 WLS 12.1.1在其模块目录中附带org.slf4j.api_1.6.1.0.jar。因此,您需要做的是在weblogic.xml中添加以下部分,指示weblogic在您的WEB-INF/lib中加载slf4j-api _x.xxjar中的类,而不是从组织中加载这些类。来自WLS安装的slf4j.api_1.6.1.0.jar。默认情况下,使用org.slf4j.api_1.6.1.0.jar ,因为它位于服务器类路径中。
<container-descriptor>
<prefer-web-inf-classes>false</prefer-web-inf-classes>
<prefer-application-packages>
<package-name>org.slf4j.*</package-name>
<package-name>org.apache.commons.logging.*</package-name>
</prefer-application-packages>
</container-descriptor>
您可能不需要添加
我没有在VDM应用程序中添加这些描述符,但工作得很好,而且api在VDM和VPORTAL中都是一致的。 – 6nagi9 2013-03-01 06:08:57
VDM在WEB-INF/lib中具有相同的org.slf4j.api_x.x.x.jar?它被使用了吗?请在您的VPORTAL中添加该部分以查看它是否有效。两者之间可能存在配置差异,我们不知道。 – Lan 2013-03-01 06:24:14
你必须哪个LAN提到的结构中,分成两个文件:
第一个是META-INF/WebLogic的application.xml中:
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
<prefer-application-packages>
<package-name>org.slf4j.*</package-name>
<package-name>org.apache.commons.logging.*</package-name>
</prefer-application-packages>
</weblogic-application>
第二个是WEB-INF/weblogic.xml中:
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="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.1/weblogic-web-app.xsd">
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
这样,你可以强制的WebLogic(在我的情况12C)来加载我们首先将SLF4J的bapp捆绑版本(必须放在WEB-INF/lib中)。但是,似乎仍然可以使用Bindings。 德文资料来源:http://www.torsten-horn.de/techdocs/jee-oracleweblogic.htm#Kompatibilitätsprobleme
第二个不需要 – 2015-05-01 02:47:25
就我而言,你实际上需要它,如果你也想在战争档案中使用依赖关系的话。 – 2015-05-08 08:33:46
我们也面临着类似的问题,我们的应用程序。 应用程序 - Spring MVC &我们正在迁移到Weblogic12c。我们尝试了不同的方式,比如修改pom.xml &全部。但最后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.2/weblogic-web-app.xsd">
<wls:context-root>/</wls:context-root>
<wls:session-descriptor>
<wls:cookie-secure>false</wls:cookie-secure>
<wls:url-rewriting-enabled>true</wls:url-rewriting-enabled>
</wls:session-descriptor>
<wls:container-descriptor>
<wls:prefer-application-packages>
<wls:package-name>org.slf4j</wls:package-name>
<wls:package-name>org.apache.xerces</wls:package-name>
</wls:prefer-application-packages>
</wls:container-descriptor>
</wls:weblogic-web-app>
pom.xml文件: -
<dependencies>
<dependency>
<groupId>org.apache.ws.commons.schema</groupId>
<artifactId>XmlSchema</artifactId>
<version>1.4.2</version>
</dependency>
<dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.apache.directory.studio</groupId>
<artifactId>org.apache.commons.collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.5.3</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-api</artifactId>
<version>1.2.7</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-dom</artifactId>
<version>1.2.7</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-impl</artifactId>
<version>1.2.7</version>
</dependency>
<dependency>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20090211</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-adb</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-kernel</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.2-RC1</version>
</dependency>
<dependency>
<groupId>backport-util-concurrent</groupId>
<artifactId>backport-util-concurrent</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>org.apache.cactus</groupId>
<artifactId>
cactus.core.framework.uberjar.javaEE.14
</artifactId>
<version>1.8.1</version>
<type>pom</type>
<scope>provided</scope>
<exclusions>
<exclusion>
<artifactId>org.mortbay.jetty</artifactId>
<groupId>org.mortbay.jetty</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.cactus</groupId>
<artifactId>cactus.integration.ant</artifactId>
<version>1.8.1</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<artifactId>cactus.integration.shared.api</artifactId>
<groupId>org.apache.cactus</groupId>
</exclusion>
<exclusion>
<artifactId>org.mortbay.jetty</artifactId>
<groupId>org.mortbay.jetty</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>onlinesupport-Mysp</groupId>
<artifactId>coherence</artifactId>
<version>3.5</version>
</dependency>
<dependency>
<groupId>commons-chain</groupId>
<artifactId>commons-chain</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>commons-digester</groupId>
<artifactId>commons-digester</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>commons-validator</groupId>
<artifactId>commons-validator</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-stax-api_1.0_spec</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.ibm.icu</groupId>
<artifactId>icu4j</artifactId>
<version>4.6</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1-beta-6</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>com.cedarsoft.serialization</groupId>
<artifactId>jdom</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>jsptags</groupId>
<artifactId>pager-taglib</artifactId>
<version>2.0</version>
</dependency>
<!-- Remove this for Weblogic -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.2</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.8</version>
</dependency>
<dependency>
<groupId>org.apache.neethi</groupId>
<artifactId>neethi</artifactId>
<version>2.0.4</version>
</dependency>
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
<version>2.0.8</version>
</dependency>
<dependency>
<groupId>xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>servletapi</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.apple.corp</groupId>
<artifactId>BlackWord</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.apple.corp</groupId>
<artifactId>AESCryptoAlgorithm</artifactId>
<version>0.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.springframework.ws</groupId>
<artifactId>spring-oxm-tiger</artifactId>
<version>1.5.4</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-bundle</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.2.RELEASE</version>
</dependency>
<!-- Quartz framework -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.8.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId>
<version>2.1.4</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.6</version>
</dependency>
<dependency>
<groupId>org.owasp.esapi</groupId>
<artifactId>esapi</artifactId>
<version>2.0_rc9</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>groovy</groupId>
<artifactId>groovy-all-1.0-jsr</artifactId>
<version>05</version>
</dependency>
<dependency>
<groupId>com.apple.ist.gcrm.infra.log</groupId>
<artifactId>cslogger</artifactId>
<version>1.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<artifactId>log4j</artifactId>
<groupId>apache-log4j</groupId>
</exclusion>
<exclusion>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.moxy</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>com.apple.ist.ets</groupId>
<artifactId>geneva-api</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.owasp</groupId>
<artifactId>antisamy</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.2.GA</version>
</dependency>
</dependencies>
<packaging>war</packaging>
</project>
请包括你的log4j.xml代码 – nav0611 2013-03-01 05:04:12
的一个得到错误部署成功本地的。 – nav0611 2013-03-01 05:05:21
是的,它正在部署并在本地weblogic 12c中成功启动。它正在部署在活动服务器上,但是当我启动它的请求服务时,它会出现上述错误。 – 6nagi9 2013-03-01 06:10:49