2013-04-03 1 views
0

@ManagedProperty (value = "# {ticketDataBean}")를 삽입하려고합니다. 나는 그 일을 할 수 있었지만 지금은 그 실패 이후 그 안에서 생성자를 선언했다. 안내해주십시오. 내 코드가 아닌 인수 생성자가 필요하므로생성자와 함께 관리 속성을 삽입 할 수 없습니다.

@ManagedProperty(value = "#{ticketDataBean}") 
private TicketDataBean ticketDataBean; 


    public class TicketDataBean extends CreateTicketData implements Serializable { 
    private static final long serialVersionUID = 1L; 
private String category; 
private TicketingService service; 
private static final transient Logger LOGGER = LoggerFactory.getLogger(TicketDataBean.class); 

public TicketDataBean(final TicketingService service) { 

    final net.atos.portlet.ticketing.model.UserInfo originalUser; 
    this.service = service; 
    originalUser = service.getDefaultReceiver(); 
    receiverId = originalUser != null ? originalUser.getId() : null; 
    LOGGER.info("Reciever id in ticketdatabean---->" + receiverId); 
} 
+0

무엇이'TicketingService'입니까? 그것은'EJB' 또는 다른'ManagedBean'입니까? –

답변

0

관리 콩 POJO에 있습니다 니펫을. service을 초기화하려면 @PostConstruct에서 할 수 있습니다. 삽입 할 수있는 service에 대해 ManagedBean을 새로 만들거나 @Singleton을 만들 수 있습니다.

@ManagedBean 
@ApplicationScoped 
public class TicketingService { 
} 

다음이 방법으로 그것을 삽입 할 수 당신은 더 약 ManagedBeanshere을 읽을 수

@ManagedProperty(value="#{ticketingService}") 
private TicketingService service; 

를 (그것이는 Tor 게터/세터를 추가하는 것을 잊지 마세요).

관련 문제