从java打印到jsp

从java打印到jsp,java,jsp,web,Java,Jsp,Web,我正在尝试创建一个Facebook oAuth代码,最终将在浏览器上打印用户的名字、姓氏、电子邮件等。这将由java和jsp实现。这是我的java代码 public class MainMenu extends HttpServlet { private static final long serialVersionUID = 1L; private String code=""; public void service(HttpServletRequest req, HttpServlet

我正在尝试创建一个Facebook oAuth代码,最终将在浏览器上打印用户的名字、姓氏、电子邮件等。这将由java和jsp实现。这是我的java代码

public class MainMenu extends HttpServlet {

private static final long serialVersionUID = 1L;
private String code="";

public void service(HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException {      

    code = req.getParameter("code");
    if (code == null || code.equals("")) {
        throw new RuntimeException(
                "ERROR: Didn't get code parameter in callback.");
    }
    FBConnection fbConnection = new FBConnection();
    String accessToken = fbConnection.getAccessToken(code);

    FBGraph fbGraph = new FBGraph(accessToken);
    String graph = fbGraph.getFBGraph();
    Map<String, String> fbProfileData = fbGraph.getGraphData(graph);
    ServletOutputStream out = res.getOutputStream();
    out.println("<h1>Facebook Login using Java</h1>");
    out.println("<h2>Application Main Menu</h2>");
    out.println("<div>Welcome "+fbProfileData.get("first_name"));
    out.println("<div>Your Email: "+fbProfileData.get("email"));
    out.println("<div>You are "+fbProfileData.get("gender"));


}
public类主菜单扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
私有字符串代码=”;
公共无效服务(HttpServletRequest-req、HttpServletResponse-res)
抛出ServletException,IOException{
代码=请求获取参数(“代码”);
if(code==null | | code.equals(“”){
抛出新的运行时异常(
“错误:在回调中未获取代码参数。”);
}
FBConnection FBConnection=新FBConnection();
字符串accessToken=fbConnection.getAccessToken(代码);
FBGraph FBGraph=新FBGraph(accessToken);
String graph=fbGraph.getFBGraph();
Map fbProfileData=fbGraph.getGraphData(图形);
ServletOutputStream out=res.getOutputStream();
println(“使用Java登录Facebook”);
out.println(“应用程序主菜单”);
out.println(“欢迎”+fbProfileData.get(“名字”);
out.println(“您的电子邮件:+fbProfileData.get”(“电子邮件”);
out.println(“你是”+fbProfileData.get(“性别”);
}
}


我有一个空的jsp文件

使用
HttpServletResponse
res
执行以下操作:

res.getWriter().write("<h2>Application Main Menu</h2>" +
                    "<h1>Facebook Login using Java</h1>" +
                    "<div>Welcome "+fbProfileData.get("first_name") +
                    "<div>Your Email: "+fbProfileData.get("email") + 
                    "<div>You are "+fbProfileData.get("gender"));
res.getWriter().flush();
res.getWriter().close();
res.getWriter().write(“应用程序主菜单”+
“使用Java登录Facebook”+
“欢迎”+fbProfileData.get(“名字”)+
“您的电子邮件:”+fbProfileData.get(“电子邮件”)+
“你是”+fbProfileData.get(“性别”);
res.getWriter().flush();
res.getWriter().close();

是的,正如建议的那样,尝试使用

PrintWriter out=response.getWriter()


由于这与System.out.println在Java中的工作基本相同。

尝试使用
response.setContentType(“text/html”);PrintWriter out=response.getWriter()
getWriter不适用于参数。(String)有什么想法吗?你是什么意思?我的意思是我收到了这个错误消息。
response.getWriter()不接受任何参数网络编写器不适用于这些参数。