目次へ

解答例 - 実習課題1 - 4.Beanタグライブラリ2

(実習課題1)

以下のWebアプリケーションを、Strutsを用いて作成しなさい。

  • 複数のロケールに対応したリソースを用意する事。
  • messageタグで、リソースにある値を表示させる事。
  • ブラウザから要求する言語によって、表示されるメッセージがどのように変わるか確認する事。

解答例

▼ディレクトリ構成は以下の通り

.
├─com
│  └─techscore
│      └─struts
│          └─chapter4
│              └─exercise1     useMessageTag.jsp
└─WEB-INF              web.xml,struts-config.xml
    ├─classes
    │  └─com
    │      └─techscore
    │          └─struts       EncodingFilter.class(2章 実習課題2と同じ),
    │                           MessageResources_en.properties,MessageResources_ja.properties
    ├─lib              strutsライブラリjarファイル
    └─tld              struts-bean.tld

※strutsライブラリjarファイル
  struts.jar,commons-beanutils.jar,commons-collections.jar,commons-digester.jar,commons-logging.jar
※MessageResource_ja.txtは、MessageResources_ja.propertiesのnative2ascii実行前ファイルです
<!-- useMessageTag.jsp -->
<!-- TECHSCORE Java JakartaStruts 4章 実習課題1 -->
<!-- Copyright (c) 2004 Four-Dimensional Data, Inc. -->

<%@ page contentType="text/html; charset=Windows-31J"
         session="false" 
         pageEncoding="Windows-31J" %>

<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean"
           prefix="bean" %>

<html>
<head><title>TECHSCORE Java JakartaStruts 4章 実習課題1</title></head>
<body>

<bean:message key="hello" />

</body>
</html>

▼MessageResources_en.properties

hello=Hello!

▼MessageResources_ja.properties

hello=\u3053\u3093\u306b\u3061\u308f\uff01

▼MessageResource_ja.txt

hello=こんにちわ!

▼struts-config.xml

<?xml version="1.0" encoding="Windows-31J" ?>
<!DOCTYPE struts-config PUBLIC
  "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
  "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

<struts-config>

    <message-resources parameter="com.techscore.struts.MessageResources" />

</struts-config>

▼web.xml

<?xml version="1.0" encoding="Windows-31J" ?>
<!DOCTYPE web-app PUBLIC
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">

<web-app>

    <filter>
        <filter-name>Encoding</filter-name>
        <filter-class>com.techscore.struts.EncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>Windows-31J</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>Encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <servlet>
        <servlet-name>Action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>6</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>Action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

</web-app>

▼起動URLは以下の通り

WEB_ROOT/com/techscore/struts/chapter4/exercise1/useMessageTag.jsp

EncodingFilter.javaの参照(2章の実習課題2と同じ)


↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp