Glassfish EAR部署时间异常

时间:2013-04-18 07:48:17

标签: java jsf glassfish glassfish-3

我正在尝试将EAR部署到Glassfish,它在EAR中使用JSF和WAR文件faces-config.xml,即在WEB-INF下。但是当我尝试部署到Glassfish服务器时,我遇到了异常:

java.lang.IllegalStateException: ContainerBase.addChild: start
org.apache.catalina.LifecycleException: java.lang.RuntimeException: 
com.sun.faces.config.ConfigurationException: 
java.util.concurrent.ExecutionException: 
com.sun.faces.config.ConfigurationException: 
Unable to parse document 'jndi:/server/WEB-INF/faces-config.xml': null

我不确定是什么问题,Eclipse在编写faces-config.xml时没有给我任何错误,但Glassfish给出了上述错误。是的,我在WEB-INF文件夹中有faces-config.xml。

以下是faces-config.xml文件的示例:

<?xml version='1.0' encoding='UTF-8'?>

<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
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-facesconfig_2_0.xsd"
version="2.0">
<!-- there are other elements here -->
</faces-config>

我无法发布整个xml文件,因为它很大而且仅供参考,我正在尝试部署Duke的书店Oracle示例Java EE应用程序,但我遇到了这个错误。我尝试在Google上搜索,但没有得到任何有用的结果。你能帮助我吗?如果需要,我可以提供更多信息。

我的faces-config.xml可以在这里找到:http://temp-share.com/show/gFHKBRxsY

1 个答案:

答案 0 :(得分:0)

faces-config.xml可能有问题。
也许你错过了>或类似的东西。

您必须发布或链接到该文件以提供更多信息。

<强>更新

由于您已链接到实际的faces-config.xml,我可以看到文件的开头与您发布的文件的开头不一致。

在您的档案中,您有:

<?xml version='1.0' encoding='UTF-8'?>
<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee/"
    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-facesconfig_2_0.xsd"
    version="2.0">

错误在第二行...... XML命名空间错误。

您必须将其更改为:

<?xml   version='1.0' encoding='UTF-8'?>
<faces-config version="2.0"
    xmlns="http://java.sun.com/xml/ns/javaee" 
    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-facesconfig_2_0.xsd">

实际上与您在问题中发布的相同:)