![](/img/trans.png)
[英]Error with Jboss while deploying a jsp/servlet web app “com.sun.faces.config.ConfigureListener” Error
[英]com.sun.faces.config.ConfigurationException: no web.xml present
我用JSF和其他一些fraeworks编写了一个应用程序。 然后,我使用Maven销毁了元数据,然后创建了一个新项目,并将所有类和配置文件导入了新项目。 这样我就可以得到干净的元数据。 现在可以毫无问题地构建该项目。 但是,当我想将其启动到tomcat时,出现以下异常:
com.sun.faces.config.ConfigurationException: no web.xml present
at com.sun.faces.config.ConfigureListener$WebXmlProcessor.scanForFacesServlet(ConfigureListener.java:785)
at com.sun.faces.config.ConfigureListener$WebXmlProcessor.<init>(ConfigureListener.java:745)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:173)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
但是该项目中肯定有一个web.xml
。 有人知道我的错误可能在哪里吗? 谢谢
是的,我正在使用m2Eclipse!
我的目录树如下所示:
旧
我的Servlet也在那里:
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>
javax.faces.webapp.FacesServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
回应Pascal的评论:
mvn clean compile
成功 mvn install
抛出一个构建错误:
[INFO] Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if execut ing in update mode)
我从Windows控制台执行了这些命令
也许问题出在其他地方。 启动服务器时还有另一个警告:
27.08.2010 09:04:52 org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNUNG: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:studentportal' did not find a matching property.
也许有帮助吗?
一些指针。 是否将web.xml放在WEB-INF / web.xml中?
从源代码中,将在以下位置抛出此特定异常:
InputStream in = context.getResourceAsStream(WEB_XML_PATH);
if (in == null) {
if (context.getMajorVersion() < 3) {
throw new ConfigurationException("no web.xml present");
}
}
它正在寻找web.xml
private static final String WEB_XML_PATH = "/WEB-INF/web.xml";
因此没有找到web.xml。
同样由于某种原因,它期望仅在Tomcat 7.0中可用的Servlet 3.0-但我认为主要问题应该是web.xml的存在
最后,它还将在如下所示的web.xml中寻找已定义的servlet。
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
我开始了一个新项目,并立即移动了一部分。 之后就可以了。 不幸的是,我不知道问题出在哪里-.-
但是创建一个新的空项目并移动所有文件(除了配置文件,我再次写了它们)是一种合理的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.