mule war包发布到weblogic

追加src/main/webapp/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/ejb-jar_3_0.xsd    
                        http://xmlns.oracle.com/weblogic/weblogic-web-app    
                        http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd">  
    <container-descriptor>
	    <prefer-application-packages>
		    <package-name>org.slf4j.*</package-name>
		    <package-name>org.apache.log4j.*</package-name>
    	</prefer-application-packages>
    </container-descriptor>
</weblogic-web-app>

 追加这个配置是为了防止log的jar包冲突,并且使得每个app都能使用自己的log4j.xml配置,因为有些项目需要将log输出在各自的log文件中。

需要注意项目中读取resource文件的操作。因为war包在weblogic中发布的时候,是不会被解压的,所有读取文件会变为读取_wl_cls_gen.jar中的文件。所以都要按照读取jar包的方法来读取文件。如下:

//File file = new File(this.getClass().getResource("/XQueries/CategorySetsGetResponse.xq").getPath());
//InputStream in = new FileInputStream(file);
ClassLoader classloader =Thread.currentThread().getContextClassLoader();
InputStream in =classloader.getResourceAsStream("/XQueries/CategorySetsGetResponse.xq");

猜你喜欢

转载自819342090.iteye.com/blog/2343195