java - Java 中 ServletContext 的输出没有达到预期?

标签 java tomcat servlets

我正在尝试从 web.xml 文件中读取某些值,但在这个问题底部的图像中出现错误。

Config.html

<form action="go" method="get">
    Enter name:<input type="text" name="pname"><br>
    Enter Age:<input type="text" name="page"><br>
    <input type="submit" value="submit">  
</form>

UseServletContext.java

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
{
     PrintWriter pw=response.getWriter();

     //Read form data through Form Page:
     String name=request.getParameter("pname");
     String age=request.getParameter("page");

     //Approach1
     ServletConfig cg=getServletConfig();
     ServletContext sc=cg.getServletContext();

     String db2url=sc.getInitParameter("db2url");
     String db2user=sc.getInitParameter("db2user");

     String sql="insert into jalajclients(name,age) values(?,?)";

     //Convert age to numeric values.
     int age1=Integer.parseInt(age.trim());

     //Store these Values to the DataBAse.
     try {
         Class.forName("com.ibm.db2.jcc.Db2Driver");
         Connection con=DriverManager.getConnection(db2url,db2user,"786");

         PreparedStatement ps=con.prepareStatement(sql);
         ps.setString(1,name);
         ps.setInt(2, age1);

         int i=ps.executeUpdate();
         pw.println(i);
      } catch(Exception e) {
         e.printStackTrace();
      }

}

我收到以下错误:

enter image description here

web.xml

 <servlet>
      <description></description>
      <display-name>UseServletContext</display-name>
      <servlet-name>UseServletContext</servlet-name>
      <servlet-class>UseServletContext</servlet-class>
 </servlet>

<context-param> 
     <param-name>db2url</param-name>
     <param-value>jdbc:db2://localhost:50000/mydb1235</param-value>
</context-param>

<context-param> 
     <param-name>db2user</param-name>
     <param-value>piyush</param-value>
</context-param>

<servlet-name>UseServletContext</servlet-name>
<url-pattern>/go1</url-pattern>
</servlet-mapping>

谁能指导我做错了什么?

最佳答案

您是否覆盖了 Servlet 中的 init 方法? 如果是,那么不要忘记调用 super.init(config);,如下所示

public void init(ServletConfig config) throws ServletException {
super.init(config); 
}

关于java - Java 中 ServletContext 的输出没有达到预期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36562695/

相关文章:

java - 无法在 Java Servlet 中反序列化 JSON

java - 使用jsp和servlet显示来自mysql的数据

java - JSONRequest 成功后 Android 更新 View

java - 如何使用 Java 解析后台进程的输出?

java - 无法同时启动 Alfresco 和 Ephesoft 应用程序

session - Tomcat:如何从 servlet 访问( session )管理器

java - Aspectj:从 HttpServletRresponse 获取响应正文(HTML 文本)

java - 一段奇怪的德尔福代码

java - 读取> 50mb文件时如何减少java堆使用?

tomcat - 为什么 reSTLet 在 JBoss 5.1 下的 tomcat 下运行,返回我的 index.html 页面类型为 "application/octet-stream"而不是 "text/html"?