2017-05-12 3 views
0

私はエンタープライズJava EE APIのWebサイトを構築しています。このウェブサイトはJAVA EE仕様に適合する必要があります。つまり、私はSpring、Hibernate ...などを使うことはできません。このWebサイトはSpringとHibernateを使用していますが。つまり、関連するコードを削除し、標準JAVA EEライブラリを使用する必要があります。 以下は現在使用しているライブラリです。誰がどのlibsが標準Java EEであるか教えていただけますか?またはlibがJAVA EE標準であるかどうかを知る方法を教えてください。 THX。これらのlibのどれが標準のJ2EEです

javax.inject 
com.googlecode.gentyref 
org.springframework -> not 
org.apache.httpcomponents 
org.apache.log4j 
ch.qos.logback 
org.slf4j 
redis.clients 
org.hibernate -> not 
commons-io 
org.apache.commons 
commons-beanutils 
mysql-connector-java 
org.glassfish.jersey 
com.fasterxml.jackson 
javax.servlet -> JAVA EE 
org.apache.oltu.oauth2 
+0

J2EEをダウンロードすると、どのライブラリを入手できましたか? – Andreas

+0

「J2EE」は旧式の略語です。 Java EEにはJPAが含まれているので、なぜHibernateは許可されていないのですか? Java EEのドキュメントを見ましたか? –

+0

「ウェブサイトはJAVA EE仕様に適合する必要があります」 - つまり、J2EE APIを活用する必要がありますが、サードパーティの実装とその依存関係を使用することはできません。 (ok、Spring以外) – gusto2

答えて

2

私はこのようなクライアントのために働いています。

完全にJava EE 7準拠のサーバーに移行すると仮定すると、既存のアプリケーションがSpring MVCを使用するかどうかが最大の問題です。そここれには電流の代替はありません、あなたはどちらかに必要があるでしょう:

  1. のJava Serverが顔使って書き換え(JSF)
  2. JAX-RSを使用して書き換え(REST)と豊富なJavaScriptのフロントエンドを構築します。

そして、あなたはあなたが上にリストしたjarファイルをすべて削除し、ちょうどあなたが使用してMavenを含めることができstandard Java EE 7 API、使用することを与えられた:

<dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>7.0</version> 
     <scope>provided</scope> 
    </dependency> 

このjarファイルは、標準APIの全てを含んでいるが、その上記のあなたのリストにあります。

また、redisとApache oauthのサポートについて決定する必要があります。

Hibernateは、標準のJPAに容易に移行できます。

ログは、java.util.loggingで置き換えることができます。

+0

THX。ジャージーを使うことはできますか?私が知っているように、JerseyはJAVAEEですが、このジャーには含まれていないようですね? – Mozzan

+0

あなたはJerseyを直接使用しません。 [javax.ws.rs](http://docs.oracle.com/javaee/7/api/javax/ws/rs/package-summary.html)および[javax.json](http:// docs。 oracle.com/javaee/7/api/javax/json/package-summary.html)パッケージはRESTサポートを提供します。多くのサーバー実装ではJerseyを使用してこれらを実装しています。 –

1

このような依存関係を削除するための厳しい制限がありますか?

例を挙げてください。 org.apache.log4jはJEEライブラリではありません。しかし、それをJEEアプリケーションから削除するように指示する厳しいルールはありません。すべてのJEEアプリケーションでlog4jをうまく使用することができます。

春使用は何も意味しません。 SpringはJEEに完全準拠した多くのツールを提供しています。

あなたのスポンサーは、アプリケーションがJEEアプリケーションサーバー上で実行されていることを確認したいと思います。ジャーのリストはこの文脈ではあまり意味がありません。

+0

スポンサーは、私たちにJ2EEを使用させたいと考えています。 Springを使ったからといって一度だけプロジェクトを止めました。だから私たちは私たちの提案をする前にどのlibsがJEEでないのか知りたい。このようなプログラムを作成することは非常に難しいことがわかります... – Mozzan

+1

1分で誰もJ2EEアプリケーションをやっていないことをスポンサーが知っていますか? –

+0

これは 'java.util'クラスを使用できないことを意味しますか?それらはJava EEではありません。 –

関連する問題