Maven中的servlet
在Maven Webapp项目中,我在项目的根目录中创建了servlet DiaServlet,即pom.xml所在的目录 其在web.xml中的描述如下:Maven中的servlet,maven,servlets,web.xml,Maven,Servlets,Web.xml,在Maven Webapp项目中,我在项目的根目录中创建了servlet DiaServlet,即pom.xml所在的目录 其在web.xml中的描述如下: <servlet> <servlet-name>DiaServlet</servlet-name> <servlet-class>DiaServlet</servlet-class> </servlet> <servlet-mapping>
<servlet>
<servlet-name>DiaServlet</servlet-name>
<servlet-class>DiaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DiaServlet</servlet-name>
<url-pattern>/DiaServlet</url-pattern>
</servlet-mapping>
我试过的一件事是将标签改为
与非Maven web应用程序中的servlet web.xml定义相同
当我使用NetScape创建servlet时,servlet描述没有添加到web.xml文件中,尽管我已选中自动添加它
这是构建环境的问题还是web.xml中的servlet定义的问题?如果是,那么同一个定义如何在其他web应用程序中工作?还是别的什么
Maven新手
TIA您是一名maven用户,在项目初始化时,您将包名命名为Dia.base,因此您的类仅驻留在Dia.base包中 所以
如果您的项目是基于maven的,那么您需要在中给出完全限定的类名,因此您必须遵循maven结构,并且您应该在src/majn/java之后定义servlet类的整个路径,这是maven已经知道的。因此,如果maven项目的结构是正确的,那么问题在于web.xmlMaven具有您必须遵守的约定。Java源文件进入src/main/Java。不在根目录中。永远不要,永远不要把你的类放在默认包中。这是一个糟糕的做法,只会给你带来麻烦。@pmp我在src/main下只有资源和webapp。我在Netbeans上创建并构建了prj。这可能有助于查看项目目录的层次结构。您还必须有java包
java.lang.ClassNotFoundException: DiaServlet
<servlet-class>Prj.base.DiaServlet</servlet-class>
<groupId>Dia.base</groupId>
<servlet>
<servlet-name>DiaServlet</servlet-name>
<servlet-class>Dia.base.DiaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DiaServlet</servlet-name>
<url-pattern>/DiaServlet</url-pattern>
</servlet-mapping>