Fork me on GitHub

Programming Design Notes

使用 Java 開發 Facebook Web App - 2

| Comments

上一回: 使用 Java 開發 Facebook Web App - 1

上回提到使用 Filter 去將所有進來的 Request 也能夠取得用戶 ID 才可以顯示內容,拿取不到用戶 ID 會 Redirect 到 Facebook 的登入頁面,今次先試試在 Facebook 顯示 Hello World 字樣。

新增一個 Servlet。
package com.blogspot.lawpronotes.servlet;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

* Servlet implementation class IndexServlet
public class IndexServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

public IndexServlet() {

protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {

Map<String, Object> model = new HashMap<String, Object>();
model.put("message", "Hello World");
request.setAttribute("model", model);

// Forward to JSP file to display message
RequestDispatcher dispatcher = request
dispatcher.forward(request, response);

這個 Servlet 只作為控制器的角色,顯示方面交由 JSP 負責。
不懂得 MVC 架構可參考這篇: 最簡單的方式實現 MVC (Servlet + JSP)

之後在 /WEB-INF 內新增一個 pages 目錄並建立 index.jsp 。
<?xml version="1.0" encoding="UTF-8"?>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isELIgnored="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="" xmlns:fb="">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<h1>${ model['message'] }</h1>

記得要在 html tag 加上 xmlns:fb=””
遲點使用 XFBML 時要用到。

打開 會見到 Hello World 字樣。

下一回: 使用 Java 開發 Facebook Web App - 3

相關書籍: Facebook Cookbook: Building Applications to Grow Your Facebook EmpireFBML Essentials: Facebook Markup Language FundamentalsFacebook Cookbook: Building Applications to Grow Your Facebook Empire