0

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-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 は非常に単純で、クラス定義は含まれていません。

4

1 に答える 1

0

その下WEB-INF/classesに、パッケージ名に従ってクラスを配置する必要があります。

ここにサーブレットを配置してみてください:

WEB-INF/classes/com/ibm/_jsp/_db.class
于 2013-03-08T18:00:03.043 に答える