質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Q&A

解決済

1回答

2621閲覧

[JavaEE] ManagedBeanの値がnullになってしまいます

otabeb

総合スコア26

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

0グッド

0クリップ

投稿2016/11/25 08:50

次の現場でJavaEEフレームワークを使用するということで現在JavaEEの自己学習をしています。
xhtmlからバッキングビーンに値を受け渡すことまではできたのですが、それをDB処理に受け渡すという段階で詰まっています。EntityManager型の変数emがnullになってしまうのです。

使用しているIDEはeclipse4.5.1です。
DBはJavaDBを使用しています。

↓DBに接続する記述を書いたクラス

package db; import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import entity.Iteminfo; @Stateless public class ItemInfoDb { @PersistenceContext EntityManager em; public void create(Iteminfo obj) { System.out.println(em); em.persist(obj); } }

↓persistence.xml

<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"> <persistence-unit name="TestItem" transaction-type="RESOURCE_LOCAL"> <properties> <property name="javax.persistence.jdbc.url" value="jdbc:derby:C:\javadb\Item_db;create=true"/> <property name="javax.persistence.jdbc.user" value="test"/> <property name="javax.persistence.jdbc.password" value="test"/> <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/> </properties> </persistence-unit> </persistence>

↓バッキングビーン

package bean; import java.io.Serializable; import javax.enterprise.context.SessionScoped; import javax.inject.Inject; import javax.inject.Named; import db.ItemInfoDb; import entity.Iteminfo; @SessionScoped @Named public class HelloBean implements Serializable { private int id; private String name; private String count; private String price; @Inject ItemInfoDb db; public String add() { Iteminfo itemInfo = new Iteminfo(); itemInfo.setId(id); itemInfo.setName(name); itemInfo.setCount(count); itemInfo.setPrice(price); ItemInfoDb db = new ItemInfoDb(); db.create(itemInfo); return "main.xhtml"; } //セッター、ゲッター }

以前同じ質問をした際にアドバイスをいただいてpersistence.xmlに使用しているDBについて記入したのですが、サーバーを立ち上げる以前にエラーになってしまいます。。

サイトや本を参考にしたのですが、一向に改善しません、、詳しい方回答よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

NetBeansを使用して再度作り直してみます

投稿2016/11/29 09:38

otabeb

総合スコア26

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問