首页 文章

在部署war文件时,weblogic 10.3.2中的weblogic.xml问题(struts2和hibernate 4.1)

提问于
浏览
0

我使用struts2和hibernate创建了一个Web应用程序并创建了它的战争 .

它在tomcat中工作正常,但是因为它加载了jpa 1.0而出现了weblogic的问题所以我创建了weblogic.xml,如下所示

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app">

    <container-descriptor>
        <prefer-web-inf-classes>false</prefer-web-inf-classes>
        <prefer-application-packages>
            <package-name>antlr.*</package-name>
            <package-name>javax.persistence.*</package-name>
        </prefer-application-packages>
    </container-descriptor>

</weblogic-web-app>

这解决了这个问题,并且它与weblogic 10.3.3一起工作正常但是当我在weblogic 10.3.2中使用上面的weblogic.xml部署了同样的战争时,它给出了以下错误

确认问题发现问题:cvc-complex-type.2.4a:预期元素的default-mime-type @ http://xmlns.oracle.com/weblogic/weblogic-web-app client-cert-proxy-enabled @ http://xmlns.oracle.com/weblogic/weblogic-web-app relogin-enabled @http://xmlns.oracle.com/weblogic/weblogic-web-app allow-all-roles @ http:// xmlns . oracle.com/weblogic/weblogic-web-app native-io-enabled @ http://xmlns.oracle.com/weblogic/weblogic-web-app minimum-native-file-size @ http://xmlns.oracle . com / weblogic / weblogic-web-app disable-implicit-servlet-mappings @ http://xmlns.oracle.com/weblogic/weblogic-web-app temp-dir @http://xmlns.oracle.com/weblogic/ weblogic-web-app optimistic-serialization @ http://xmlns.oracle.com/weblogic/weblogic-web-app retain-original-url @http://xmlns.oracle.com/weblogic/weblogic-web-app show -archived-real-path-enabled @ http://xmlns.oracle.com/weblogic/weblogic-web-app require-admin-traffic @ http://xmlns.oracle.com/weblogic/weblogic-web-app access -logging禁用HTTP // @://xmlns.oracle.com/weblogi c / weblogic-web-app'而不是'prefer-application-packages @ http://xmlns.oracle.com/weblogic/weblogic-web-app'在元素容器描述符@http://xmlns.oracle中 . COM / weblogic的/ WebLogic的web应用程序:

我发现10.3.2中不支持weblogic.xml中使用的 <prefer-application-packages>

所以我改变了weblogic.xml,如下所示

<weblogic-web-app
    xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd"
>

    <container-descriptor>
        <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>

</weblogic-web-app>

但是上面的weblogic.xml没有加载hibernate jpa2.0

任何人都可以在weblogic 10.3.2中为我提供运行hibernate的确切配置

我想仅使用weblogic.xml完成此操作,而不是更改启动脚本或包含weblogic模块文件夹中的jar等任何其他方法

1 回答

  • 0

    WebLogic 10.3.4是第一个支持JPA2.0的版本 . 您提到的Weblogic 10.3.0和10.3.2根本就不支持JPA2.0 . 如果需要JPA2,则需要升级weblogic版本,否则使用JPA1.0 .

    某些版本的weblogic还要求weblogic-application.xml和weblogic.xml使用 wls:tag 的所有xml标记,因此您可以使用 <wls:container-root><wls:container-description> ,这可能是验证错误的来源 .

相关问题