1

をディレクトリに含めましprimefaces-3.4RC1.jarた。WEB-INF/lib私のコントローラーでは、私のモデルBeanのように自動配線しています

@ManagedBean
@RequestScoped
public class MyController{

@Autowired
Location loc;

//other stuff

}

私のLocationクラスは次のようになります

public class Location{     
    private Integer countryId;
    //getters setters
}

私の見解は次のように見えます

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
    <div class="contentBox cornerBorder border">

    <p:dialog>
    <table class="DialogTable">                                                     
    <tr>
     <td><label>Country</label></td> 
        <h:selectOneMenu required="true" id="contry" styleClass="text-box" value="#{myController.loc.countryId}">   
    ----------------------------------------------------------------------------------------------^here it gives warning and if i run it crashes 

    </tr>
    </table>
    </p:dialog>

リンクをクリックしてダイアログを開くと、プロパティcountryIdが見つからないというエラーがスローされます。削除しvalue="myController.loc.countryId"ても問題ありません...誰かが私を正しい方向に導いてくれます

PS: アプリケーションの context.xml に適切なエントリを作成しました。


実際のエラー

SEVERE: javax.el.PropertyNotFoundException: /WebPages/personal/personalDiv.xhtml @230,119 value="#{myController.loc.countryId}": クラス 'com.deltasoft.controller.myController' にはプロパティ 'loc' がありません.

4

1 に答える 1

1

このようにコードを変更したい場合があります。

@ManagedBean
@RequestScoped
public class MyController{

@ManagedProperty
private Location loc;   // Getters and Setters.

//other stuff

}

@component
public class Location{     
    private Integer countryId;
    //getters setters
}

そしてあなたのspring.xmlであなたがすべきこと

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:security="http://www.springframework.org/schema/security"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

 <context:component-scan="path to Location class path"/>
</beans>
于 2012-12-14T05:48:28.850 に答える