Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 即使对象为空,是否有办法在jsp页面的文本框中显示值?_Java_Jsp_Servlets - Fatal编程技术网

Java 即使对象为空,是否有办法在jsp页面的文本框中显示值?

Java 即使对象为空,是否有办法在jsp页面的文本框中显示值?,java,jsp,servlets,Java,Jsp,Servlets,我有鸡和蛋的情况: 我有2个servlet,我希望di对象通过搜索显示,而不是通过显示servlet显示 问题: 有没有办法在jsp页面中显示refID,即使对象是 空?目前,在我的代码中,我添加了默认查询只是为了填充“dmsearch”,所以Jsp不会给出 错误(SearchDataManagerController.searchDMData(0,0,0);) 或任何其他解决方案,以便我的搜索值应显示已加载的显示servlet 问题: 在页面加载时,我不一定要显示refId数据(servlet

我有鸡和蛋的情况: 我有2个servlet,我希望di对象通过搜索显示,而不是通过显示servlet显示

问题:

  • 有没有办法在jsp页面中显示refID,即使对象是 空?目前,在我的代码中,我添加了默认查询只是为了填充“dmsearch”,所以Jsp不会给出 错误
    (SearchDataManagerController.searchDMData(0,0,0);)
  • 或任何其他解决方案,以便我的搜索值应显示已加载的显示servlet
  • 问题: 在页面加载时,我不一定要显示refId数据(servlet 1)。如果它显示ok,但当我单击Search时,它应该显示数据(servlet 2)。它在文本框中显示搜索到的值,但Servlet 1加载并重置该值

    在jsp中使用“Get”

    代码:

    
    //Servlet显示:1:
    数据管理器;
    String buttonClickStatus=request.getParameter(“buttonClickStatus”);
    dm=SearchDataManagerController.searchDMData(0,0,0);
    session.setAttribute(“dmsearch”,dm);
    //Servlet搜索:2:
    dm=SearchDataManagerController.searchDMData(driverid、textid、weekid);
    session.setAttribute(“dmsearch”,dm);
    
    请帮忙
    谢谢

    我不确定这是否会对您有所帮助,但您可以阅读有关它的表达式语言,它非常有用,可以避免jsp页面中的java代码。 您可以试试这个,但我不确定这是否是您想要的:

    <input type="text" name="refId" id="refId" value ="${ empty di ? 1 : di.getId()}">
    
    
    
    解决方案:

    DataManager dm = new DataManager();
    int textid=0;
    int driverid=0;
    int weekid=0;
    if(request.getParameter("textid")!=null) {
        textid= Integer.parseInt(request.getParameter("textid"));
    }
    if(request.getParameter("driverid")!=null) {
        driverid= Integer.parseInt(request.getParameter("driverid"));
    }
    if(request.getParameter("weekid")!=null) {
         weekid= Integer.parseInt(request.getParameter("weekid"));
    }
    

    谢谢,让我试试看,它只是将“${empty di?1:di.getId()}”>打印到文本框中。我认为EL不适合您尝试将其添加到jsp页面的顶部。有道理。让我试试。谢谢,JSP端的情况很糟糕,我在servlet端添加了几乎相同的条件(见答案)。谢谢你的帮助
    DataManager dm = new DataManager();
    int textid=0;
    int driverid=0;
    int weekid=0;
    if(request.getParameter("textid")!=null) {
        textid= Integer.parseInt(request.getParameter("textid"));
    }
    if(request.getParameter("driverid")!=null) {
        driverid= Integer.parseInt(request.getParameter("driverid"));
    }
    if(request.getParameter("weekid")!=null) {
         weekid= Integer.parseInt(request.getParameter("weekid"));
    }
    
    Solution:
    
    DataManager dm = new DataManager();
    int textid=0;
    int driverid=0;
    int weekid=0;
    if(request.getParameter("textid")!=null) {
        textid= Integer.parseInt(request.getParameter("textid"));
    }
    if(request.getParameter("driverid")!=null) {
        driverid= Integer.parseInt(request.getParameter("driverid"));
    }
    if(request.getParameter("weekid")!=null) {
         weekid= Integer.parseInt(request.getParameter("weekid"));
    }