2017-05-29 10 views
0

私は、データベースからエンティティクラスを作成し、エンティティクラスからjpaを使って静かなWebサービスを作成して、静かなWebサービスを作成しましたが、Tomcatを私のサーバーとして使用しました。私のサーバーとしてglassfishを使用するときは動作します。私はどんな依存関係も見逃していると思いますか?グラスフィッシュをどのようにエミュレートできますか?Tomcatサーバーを使って安らかなwebserviceを作成

私は次の依存持っ

{ 
"acceptedGender":"both", 
"price":123123.00, 
"type":"apartment" 
"vacantNum":13, 
"hadID":4 
} 

挿入しようとしています:
JavaEEの-API-7.0.jar
するjavax.ejb-api.jarの
のmysql-コネクタのjava-5.1。 42-bin.jarを

@POST 
@Override 
@Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) 
public void create(Students entity) { 
    super.create(entity); 
}` 

private static final long serialVersionUID = 1L; 
@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
@Basic(optional = false) 
@Column(name = "hatID") 
private Integer hatID; 
@Basic(optional = false) 
@Column(name = "type") 
private String type; 
@Basic(optional = false) 
@Column(name = "acceptedGender") 
private String acceptedGender; 
@Basic(optional = false) 
@Column(name = "vacantNum") 
private int vacantNum; 
// @Max(value=?) @Min(value=?)//if you know range of your decimal fields 
consider using these annotations to enforce field validation 
@Basic(optional = false) 
@Column(name = "price") 
private BigDecimal price; 
// @OneToMany(cascade = CascadeType.ALL, mappedBy = "hatID") 
// private Collection<Reservation> reservationCollection; 
@JoinColumn(name = "hadID", referencedColumnName = "hadID") 
@ManyToOne(optional = false) 
private HaDetails hadID; 

public HaTypes(Integer hatID, String type, String acceptedGender, int 
vacantNum, BigDecimal price) { 
    this.hatID = hatID; 
    this.type = type; 
    this.acceptedGender = acceptedGender; 
    this.vacantNum = vacantNum; 
    this.price = price;` 

あなたが私の問題の解決策を持っていないなら、aws(ドッカーを勉強する時間はない)、opensshift、jelasticをクラウドに簡単に配置することができます。

+1

すべてのエラーメッセージ:あなたは詳細が必要な場合 は、次の記事で答えを見ることができますか? – Jan

+0

@Janエラーメッセージはありません。データベースに値を挿入しませんが、glassfishを使用すると、同じコードを使用してデータベースに値が挿入されます – Christian

+0

catalina.outをチェックしましたか?それがDBに挿入されていない場合、あなたのDB接続が確立されていない可能性があります - これを正しく設定する方法はglassfishとtomcatの間で異なります – Jan

答えて

0

Glassfishはアプリケーションサーバーであるため、そのままの状態でJAX-RSをサポートします。 Tomcatは単なるWebコンテナであり、JAX-RSアプリケーションを配備することはできず、自分で配線することなく動作させることはできません(これはIn which container do JAX-RS web services run?参照)。

tomcat内でJerseyサーバーを実行する場合は、アプリケーションのデプロイメント記述子でJerseyサーバーを構成する必要があります。どこでも

関連する問題