尝试从我的Web应用程序中使用编译的jsp,但我不知道如何为我的web.xml
确定适当的类名,我将_db.class
文件放在WEB-INF/classes/_db.class
每当我尝试用/context-root/dbx调用我的应用程序时,我得到:
Error 404: javax.servlet.UnavailableException: SRVE0200E: Servlet [com/ibm/_jsp/_db]:
Could not find required class - class java.lang.ClassNotFoundException: com/ibm/_jsp/_db
我的web.xml包含一个基本的servlet映射
<servlet>
<servlet-name>dbx</servlet-name>
<servlet-class>com/ibm/_jsp/_db</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dbx</servlet-name>
<url-pattern>/dbx/*</url-pattern>
</servlet-mapping>
如果我将<servlet-class>
更改为_db,我得到:
错误500:java.lang.NoClassDefFoundError: _db(错误的名称:com/ibm/_jsp/_db)
运行/opt/IBM/WebSphere/AppServer/java/bin/javap _db给出
Compiled from "_db.java"
public final class com.ibm._jsp._db extends com.ibm.ws.jsp.runtime.HttpJspBase implements com.ibm.ws.jsp.runtime.JspClassInformation{
static {};
public com.ibm._jsp._db();
public java.lang.String[] getDependants();
public java.lang.String getVersionInformation();
public boolean isDebugClassFile();
public void _jspInit();
public void _jspService(javax.servlet.http.HttpServletRequest,
javax.servlet.http.HttpServletResponse)
throws java.io.IOException, javax.servlet.ServletException;
}
如果我尝试使用com.ibm._jsp。_db为服务器类,我得到:
Error 404: javax.servlet.UnavailableException: SRVE0200E: Servlet [com.ibm._jsp._db]:
Could not find required class - class java.lang.ClassNotFoundException: com.ibm._jsp._db
我的实际jsp非常简单,不包含类定义。
在WEB-INF/classes
下,必须根据它的包名放置类。
试着把Servlet放在这里:
WEB-INF/classes/com/ibm/_jsp/_db.class