0

Swing、Spring フレームワーク、および Hibernate を使用してデスクトップ アプリケーションを開発します。アノテーションを使って POJO をマッピングしたい。私はコードを開発しますが、どこが間違っているのかわかりません...これが私のアプリケーションのスナップです。

ポジョ:

@Table(name = "emp_master", schema = "test")
public class EmpMaster extends Model {
    private Integer empId;
    private String empName;
    private Double salary;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "emp_id", unique = true, nullable = false, precision = 131089, scale = 0)
    public Integer getEmpId() {
        return empId;
    }
    public void setEmpId(Integer empId) {
        this.empId = empId;
    }

私のメインの GUI クラス:

 public static void main(String args[]) {       
        String[] contextPaths = new String[]{"ApplicationContext.xml"};
        new ClassPathXmlApplicationContext(contextPaths);

このクラスには、レコードを保存したいボタンをクリックしてボタンが含まれています。button の actionListener の下のコード:

private IEmpMasterService empMasterService;
//getter setter for empMasterService//

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {         
        String name = jTextField1.getText();
        String salary = jTextField2.getText();
        EmpMaster empMaster = new EmpMaster();
        empMaster.setEmpName(name);
        empMaster.setSalary(Double.parseDouble(salary));  
 //at this line I get error NullPointerException     
        InternalResultsResponse<EmpMaster> response = getEmpMasterService().maintainEmpMaster(empMaster);         
    }

IEmpMasterServiceID、名前、給与を含むインターフェースです。
Pojo-def.xml で:

    <context:annotation-config />
    <context:component-scan base-package="org" /> 
<import resource="datasource.xml" />
       <bean id="mainFrame" class="org.UI.EmpManager">
        <property name="title"> <value>Spring Example</value></property>            
    </bean>     
    <bean id="empManager" class="org.UI.EmpManager">
        <property name="empMasterService" ref="empMasterServiceImpl"></property>
    </bean> 
    <bean id="empMasterServiceImpl" class="org.service.EmpMasterService">
        <property name="empMasterDAO" ref="empMasterDAOTarget"></property>
    </bean> 
    <bean id="empMasterDAOTarget" class="org.DAO.EmpMasterDAO">
        <property name="hibernateTemplate" ref="matrixHibernateTemplate"/>
    </bean>

すべてのサービス クラスと dao クラスを適切に作成し、datasource.xml を構成して別のプロジェクトで動作させましたが、行のメイン GUI クラスでエラーが発生していgetEmpMasterService()ますNullPointerException
インターフェイスを実装者クラスにマッピングする際に何か問題があると思いますか?

4

1 に答える 1

1

あなたが提供した情報は、Pojo-def.xml ファイルでは EmpMasterService の Id は「empMasterServiceImpl」ですが、保存レコード コードではオブジェクト名が「empMasterService」の EmpMasterService サービスであると考えられます。したがって、EmpMasterService のオブジェクトを設定することはできません。

于 2012-06-04T12:41:09.560 に答える