代码之家  ›  专栏  ›  技术社区  ›  user1673892

禁用webLogic server的本机JSF实现并使用myfaces实现

  •  1
  • user1673892  · 技术社区  · 6 年前

    我已经读到Oracle WebLogic Server有一个JSF的实现,它默认使用JSF。这 article 描述禁用此默认实现并允许使用不同实现的过程(我想在本例中使用myfaces实现),但我无法理解weblogic是如何实现的。在我的\工作区中找到xml。元数据将是这样的。

    <?xml version="1.0" encoding="UTF-8"?>
    <wls:weblogic-web-app xmlns:wls="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/920/weblogic-web-app.xsd">
        <wls:jsp-descriptor>
            <wls:keepgenerated>true</wls:keepgenerated>
            <wls:working-dir>D:\Ejada\Eclipse\Mars\Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\base_domain\work\OnlineShop</wls:working-dir>
            <wls:debug>true</wls:debug>
        </wls:jsp-descriptor>
        <wls:context-root>OnlineShop</wls:context-root>
        <wls:weblogic-version>9.2</wls:weblogic-version>
        <prefer-application-packages> 
       <package-name>javax.faces.*</package-name> 
       <package-name>com.sun.faces.*</package-name> 
       <package-name>com.bea.faces.*</package-name> 
       </prefer-application-packages> 
    
       <prefer-application-resources> 
       <resource-name>javax.faces.*</resource-name> 
       <resource-name>com.sun.faces.*</resource-name> 
       <resource-name>com.bea.faces.*</resource-name> 
    
    <resource-name>META-INF/services/javax.servlet.ServletContainerInitializer</resource-name>
    <resource-name>META-INF/services/com.sun.faces.*</resource-name>
       </prefer-application-resources>
    </wls:weblogic-web-app>
    

    当前启动服务器时,无法重新启动,出现错误:

    <Failure occurred in the execution of deployment request with ID "94264473636217" for task "1" on [partition-name: DOMAIN]. Error is: "weblogic.application.ModuleException: [HTTP:101064][WebAppModule(_auto_generated_ear_:OnlineShop)] Error parsing descriptor in Web appplication "D:\Ejada\Eclipse\Mars\Workspace\OnlineShop\WebContent"
    weblogic.application.ModuleException: VALIDATION PROBLEMS WERE FOUND
      <10:7> problem: cvc-complex-type.2.4a: Expected elements 'description@http://xmlns.oracle.com/weblogic/weblogic-web-app weblogic-version@http://xmlns.oracle.com/weblogic/weblogic-web-app security-role-assignment@http://xmlns.oracle.com/weblogic/weblogic-web-app run-as-role-assignment@http://xmlns.oracle.com/weblogic/weblogic-web-app resource-description@http://xmlns.oracle.com/weblogic/weblogic-web-app resource-env-description@http://xmlns.oracle.com/weblogic/weblogic-web-app ejb-reference-description@http://xmlns.oracle.com/weblogic/weblogic-web-app service-reference-description@http://xmlns.oracle.com/weblogic/weblogic-web-app message-destination-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app session-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app jsp-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app auth-filter@http://xmlns.oracle.com/weblogic/weblogic-web-app container-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app async-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app charset-params@http://xmlns.oracle.com/weblogic/weblogic-web-app virtual-directory-mapping@http://xmlns.oracle.com/weblogic/weblogic-web-app url-match-map@http://xmlns.oracle.com/weblogic/weblogic-web-app security-permission@http://xmlns.oracle.com/weblogic/weblogic-web-app context-root@http://xmlns.oracle.com/weblogic/weblogic-web-app wl-dispatch-policy@http://xmlns.oracle.com/weblogic/weblogic-web-app servlet-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app work-manager@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-executor-service@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-scheduled-executor-service@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-thread-factory@http://xmlns.oracle.com/weblogic/weblogic-web-app component-factory-class-name@http://xmlns.oracle.com/weblogic/weblogic-web-app logging@http://xmlns.oracle.com/weblogic/weblogic-web-app library-ref@http://xmlns.oracle.com/weblogic/weblogic-web-app jaspic-provider@http://xmlns.oracle.com/weblogic/weblogic-web-app fast-swap@http://xmlns.oracle.com/weblogic/weblogic-web-app coherence-cluster-ref@http://xmlns.oracle.com/weblogic/weblogic-web-app osgi-framework-reference@http://xmlns.oracle.com/weblogic/weblogic-web-app ready-registration@http://xmlns.oracle.com/weblogic/weblogic-web-app cdi-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app' instead of 'prefer-application-packages@http://xmlns.oracle.com/weblogic/weblogic-web-app' here in element weblogic-web-app@http://xmlns.oracle.com/weblogic/weblogic-web-app
      <16:6> problem: cvc-complex-type.2.4a: Expected elements 'description@http://xmlns.oracle.com/weblogic/weblogic-web-app weblogic-version@http://xmlns.oracle.com/weblogic/weblogic-web-app security-role-assignment@http://xmlns.oracle.com/weblogic/weblogic-web-app run-as-role-assignment@http://xmlns.oracle.com/weblogic/weblogic-web-app resource-description@http://xmlns.oracle.com/weblogic/weblogic-web-app resource-env-description@http://xmlns.oracle.com/weblogic/weblogic-web-app ejb-reference-description@http://xmlns.oracle.com/weblogic/weblogic-web-app service-reference-description@http://xmlns.oracle.com/weblogic/weblogic-web-app message-destination-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app session-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app jsp-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app auth-filter@http://xmlns.oracle.com/weblogic/weblogic-web-app container-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app async-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app charset-params@http://xmlns.oracle.com/weblogic/weblogic-web-app virtual-directory-mapping@http://xmlns.oracle.com/weblogic/weblogic-web-app url-match-map@http://xmlns.oracle.com/weblogic/weblogic-web-app security-permission@http://xmlns.oracle.com/weblogic/weblogic-web-app context-root@http://xmlns.oracle.com/weblogic/weblogic-web-app wl-dispatch-policy@http://xmlns.oracle.com/weblogic/weblogic-web-app servlet-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app work-manager@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-executor-service@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-scheduled-executor-service@http://xmlns.oracle.com/weblogic/weblogic-web-app managed-thread-factory@http://xmlns.oracle.com/weblogic/weblogic-web-app component-factory-class-name@http://xmlns.oracle.com/weblogic/weblogic-web-app logging@http://xmlns.oracle.com/weblogic/weblogic-web-app library-ref@http://xmlns.oracle.com/weblogic/weblogic-web-app jaspic-provider@http://xmlns.oracle.com/weblogic/weblogic-web-app fast-swap@http://xmlns.oracle.com/weblogic/weblogic-web-app coherence-cluster-ref@http://xmlns.oracle.com/weblogic/weblogic-web-app osgi-framework-reference@http://xmlns.oracle.com/weblogic/weblogic-web-app ready-registration@http://xmlns.oracle.com/weblogic/weblogic-web-app cdi-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app' instead of 'prefer-application-resources@http://xmlns.oracle.com/weblogic/weblogic-web-app' here in element weblogic-web-app@http://xmlns.oracle.com/weblogic/weblogic-web-app
    

    我的weblogic应该做什么。xml文件包含?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Ahmed Essam    6 年前

    它应包含以下内容:

    <container-descriptor>
            <prefer-web-inf-classes>false</prefer-web-inf-classes>
            <prefer-application-packages>
                <package-name>javax.faces.*</package-name>
                <package-name>org.jboss.logging.*</package-name>
            </prefer-application-packages>
            <show-archived-real-path-enabled>true</show-archived-real-path-enabled>
        </container-descriptor>
    

    将其放入WEB-INF文件夹。