libro
www.tuyano.com
Google App Engine for Java(GAE/J)プログラミング入門

Googleアカウントによるユーザー認証 (5/5)

作成:2010-05-10 15:32
更新:2010-05-10 18:38

■非公開ページの作成

では、非公開ページ「private.jsp」を作成しましょう。ソースコードは下に掲載した通りになります。

ここでは、最初にJSPのコードを使って、session.getAttribute("user")でセッションに保管してあるUserインスタンスを取り出しています。そして、現在ログインしているユーザ名を、「<%=user.getNickname() %>」というようにして表示しています。

この「getNickname」というメソッドは、アカウントのニックネームを返すものです。ニックネームが設定されていない場合は、登録メールアドレスが返されます。似たようなものに「getEmail」というメソッドもあり、これはアカウント登録されているメールアドレスを返します。今のところ、Userから取得できるアカウント情報は、これくらいです。

ページ下部には、ログアウト用のリンクが、<a href="/logout">というようにして用意されています。これで、クリックするとログアウトをし、それからpublic.htmlに戻ります。


実際に、public.htmlにアクセスし、private.jspにログインしてまたログアウトする、といった一連の作業を行ってみましょう。ログイン時にはGooleのログインページが自動的に現れます。独自にログインページなどを用意する必要もなく、非常に簡単に認証が行えることがわかるでしょう。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

※private.jspのソースコード


<%@ page language="java" contentType="text/html; charset=utf8"
		pageEncoding="utf8" %>
<%@ page import="com.google.appengine.api.users.*" %>
<%
User user = (User)session.getAttribute("user");
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
	"http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type"
			content="text/html; charset=utf-8">
		<title>Private Page</title>
	</head>
	<body>
		<h1>Private Page</h1>
		<div>※このページは、公開されていないプライベートなページです。€‚</div>
		<div style="font-weight: bold;">ユーザー:<%=user.getNickname() %></div>
		<br>
		<a href="/logout">Logout</a>
	</body>
</html>

※関連コンテンツ

「Google App Engine for Java(GAE/J)プログラミング入門」に戻る