Jersey:将数据传递到.jsp页面

时间:2011-09-17 23:35:08

标签: java jersey

我是泽西和Web应用程序开发的新手。我试图谷歌我的问题,但似乎无法在泽西岛的文档或互联网上找到正确的答案。我有一个名为User的复杂数据类型。此数据类型包含各种字符串和URI。我正在尝试使用以下代码将此类型的变量从java文件传递到jsp ...

.java代码

return new Viewable("/page.jsp", User);

.jsp代码

<%@System.out.println(request);%>

我在邮件列表上找到的.jsp代码尝试了各种变体,但它们似乎都返回了同样的错误......

org.apache.jasper.JasperException: /page.jsp (line: 3, column: 7) Invalid directive
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:408)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:89)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:498)
org.apache.jasper.compiler.Parser.parseFileDirectives(Parser.java:1777)
org.apache.jasper.compiler.Parser.parse(Parser.java:135)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242)
org.apache.jasper.compiler.ParserController.parseDirectives(ParserController.java:119)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:193)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:373)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:644)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

我哪里错了?

3 个答案:

答案 0 :(得分:3)

<%@ ... %>表示JSP中的指令。对于代码段(scriptlet),请使用<% ... %>

答案 1 :(得分:3)

在java文件中,您需要使用如下:

request.setAttribute(user);

并在jsp.file中使用:

request.getAttribute(user);

//您可以使用request / session / servletContext / application将信息从java文件发送到jsp文件。

如果你只需要在jsp文件中使用Class User,你就这样做:

<@package import="//Class User's URL"> or <jsp:useBean.../>

答案 2 :(得分:1)

尝试使用request.setAttribute将值从servlet传递到jsp页面。话虽这么说,我建议为User创建一个类,并使用getter setter方法将值附加到类。然后传递Class.id或Class.name或Class.'whichever字段'作为请求内的参数 .setAttribute,您要传递给jsp页面。