システム開発で思うところ

Javaで主にシステム開発をしながら思うところをツラツラを綴る

Paraya と Java EE 8 で Hello

EEなんだから、やっぱりParayaだよね。

ということで、この記事のParaya版

vermeer.hatenablog.jp

Hello しかしていないから、本当にこれが正しいのか全く分からないけれど。。

ParayaはEサーバーなので、pomでの依存解決や、web.xmlなどの記述量が減りますね。

依存関係

pom.xml

    <dependencies>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>8.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

これだけ。

設定

WEB-INF/beans.xml

CDIのバージョンを2.0にしておく。
しないといけないか、分からないけど理屈上はしておくべきだと思うので。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_2_0.xsd"
       bean-discovery-mode="annotated">
</beans>

WEB-INF/web.xml

Servletのバージョンを4.0にしておく。
しないといけないか、分からないけど理屈上はしておくべきだと思うので。

<?xml version="1.0" encoding="UTF-8"?>
<web-app
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
    version="4.0">

    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

    <context-param>
        <param-name>javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR</param-name>
        <param-value>true</param-value>
    </context-param>

    <context-param>
        <param-name>javax.faces.SEPARATOR_CHAR</param-name>
        <param-value>-</param-value>
    </context-param>

    <welcome-file-list>
        <welcome-file>index.xhtml</welcome-file>
    </welcome-file-list>

    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>

</web-app>

Code

Bitbucket

さいごに

まだ手探り。

とりあえずEEで色々するのは Tomcatじゃなくて、ちゃんとEEサーバーで色々と試していこうかな。

というわけで Hello Java EE 8

2018/4/25 追記
NetBeans8.2で開発をするんだったら、とりあえずJava EE 7までにしておいた方が良さそうなので、この雛型は使わない。