TEL:400-8793-956
当前位置:程序、服务器

Servlet文件中的Java Web错误

提问者: 近期获赞: 浏览人数: 发布时间:2020-12-23 14:17:30

 问:你好,

 
我在运行下一个代码时遇到问题。我有一个glassfish服务器,并添加了servlet API。问题是,当我尝试运行该错误时,会发生此错误:在/ Users / jakublemiszewski / NetBeansProjects / JspServletTutorial / build / web GlassFish Server进行就地部署,部署,空,false / Users / jakublemiszewski / NetBeansProjects / JspServletTutorial / nbproject / build -impl.xml:1077:该模块尚未部署。有关详细信息,请参见服务器日志。
 
另一个错误:/Users/jakublemiszewski/NetBeansProjects/JspServletTutorial/src/java/Servlet/SimpleServlet.java:47:错误:接口HttpSession中的方法getAttribute无法应用于给定类型;session.getAttribute(“ savedUserName”,userName); 必需:找到的字符串:String,String原因:实际和正式参数列表的长度不同1错误/Users/jakublemiszewski/NetBeansProjects/JspServletTutorial/nbproject/build-impl.xml:899:执行此行时发生以下错误:/ Users /jakublemiszewski/NetBeansProjects/JspServletTutorial/nbproject/build-impl.xml:321:编译失败;有关详细信息,请参见编译器错误输出。生成失败(总时间:0秒)
 
我是新手,所以我不明白问题是什么希望获得帮助。谢谢:)代码:
 
/ *
 *要更改此许可证标题,请在“项目属性”中选择“许可证标题”。
*要更改此模板文件,请选择工具| 范本
 *并在编辑器中打开模板。
 * /
包Servlet ;
导入java 。io 。IOException ;
导入java 。io 。PrintWriter ;
导入javax 。servlet 。ServletContext ;
导入javax 。servlet 。ServletException ;
 导入javax 。servlet 。http 。HttpServlet ;
导入javax 。servlet 。http 。HttpServletRequest ;
导入javax 。servlet 。http 。HttpServletResponse ;
导入javax 。servlet 。http 。HttpSession ;
/ **
 *
* @作者Jakub Lemiszewski
 * /
公共 类SimpleServlet扩展了HttpServlet {  
    / **
     *处理对HTTP <code> GET </ code>和<code> POST </ code>的请求
     * 方法。
     *
     * @param请求servlet请求
     * @param响应servlet响应
     * @抛出ServletException,如果发生特定于servlet的错误
     * @引发IOException -如果发生I / O错误
     * /
    受保护的 void  processRequest (HttpServletRequest 请求, HttpServletResponse 响应)
            抛出ServletException , IOException {
        反应。setContentType (“ text / html; charset = UTF-8” );
        尝试 (PrintWriter的 出=响应。的getWriter ()) {
            字符串 userName = request 。getParameter (“ name” );
            HttpSession  session = request 。getSession ();
            ServletContext  context =请求。getServletContext ();
            if  ( userName !=  “”  && userName !=  null )
            {
                会议。getAttribute (“ savedUserName” , userName );
                情境。setAttribute (“ savedUserName” , userName );
            }
            / * TODO在这里输出您的页面。您可以使用以下示例代码。* /
            出来。println (“ <!DOCTYPE html>” );
            出来。println (“ <html>” );
            出来。println (“ <head>” );
            出来。println (“ <title> Servlet SimpleServlet </ title>” );            
            出来。println (“ </ head>” );
            出来。println (“ <body>” );
            出来。的println (“<H1>的Servlet SimpleServlet在”  +请求。getContextPath () +  “</ H1>” );
             出来。println (“ <h2>请求的参数”  +  ( String ) userName +  “ </ h2>” );
              出来。的println (“<H3>会话用户名”  +  (字符串)会话。的getAttribute (“savedUserName” ) +  “</ H1>” );
              出来。的println (“<H4>上下文用户名”  +  (字符串)上下文。的getAttribute (“savedUserName” ) +  “</ H4>” );
              出来。println (“ <h5> Defult Usert Config”  +  getServletConfig ()。getInitParameter (“ defaultUser” ) +  “ </ h5>” ); 
                // defaultUser来自web.xml-> servlet->添加参数
            出来。println (“ </ body>” );
            出来。println (“ </ html>” );
        }
    }
    // <editor-fold defaultstate =“ collapsed” desc =“ HttpServlet方法。单击左侧的+号以编辑代码。
    / **
     *处理HTTP <code> GET </ code>方法。
     *
     * @param请求servlet请求
     * @param响应servlet响应
     * @抛出ServletException,如果发生特定于servlet的错误
     * @引发IOException -如果发生I / O错误
     * /
    @Override
    受保护的 void  doGet (HttpServletRequest 请求, HttpServletResponse 响应)
            抛出ServletException , IOException {
        processRequest ( request , response );
    }
    / **
     *处理HTTP <code> POST </ code>方法。
     *
     * @param请求servlet请求
     * @param响应servlet响应
     * @抛出ServletException,如果发生特定于servlet的错误
     * @引发IOException -如果发生I / O错误
     * /
    @Override
    受保护的 void  doPost (HttpServletRequest 请求, HttpServletResponse 响应)
            抛出ServletException , IOException {
        processRequest ( request , response );
    }
    / **
     *返回servlet的简短描述。
     *
     * @返回包含servlet描述的字符串
     * /
    @Override
    公共 字符串getServletInfo (){  
        返回 “简短描述” ;
    } // </ editor-fold>
}
 
 
答:在以下代码中遇到错误:
 
 if(userName!=“” && userName!= null)
{
session.getAttribute(“ savedUserName”,userName);
context.setAttribute(“ savedUserName”,userName);
}
更新上面的代码如下:
 
 if(userName!=“” && userName!= null)
{
session.setAttribute(“ savedUserName”,userName);
context.setAttribute(“ savedUserName”,userName);
}
上一篇: 如何使用GSON库解析和读取JSON数组
下一篇: 在iOS中无法从NSInputstream读取大文件