WELD-000072 수동화 범위를 선언하는 관리 빈은 수동화가 가능해야 합니다.
간단한 프로그램을 자바 웹 형태로 작성했는데 다음과 같은 오류가 나타납니다.
WELD-000072 수동화 스코프를 선언하는 관리 빈은 수동화가 가능해야 합니다.빈 : 관리빈 [클래스]
BeanPakage.DemoBeans
[ ] 한정자 포함 [ 。@Any
@Default
@Named
]
이 에러가 어디서 발생하는지 말씀해 주실 수 있나요?
import javax.enterprise.context.SessionScoped;
import javax.inject.Named;
@Named("DemoBeans")
@SessionScoped
public class DemoBeans {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Serializable 인터페이스를 구현하면 빈 패시베이션이 가능합니다.
public class DemoBean implements Serializable { ... }
수동화가 가능하기 위해서는 더 많은 요건이 있습니다.자세한 내용은 용접 설명서를 참조하십시오.
CDI bean을 시리얼화할 수 있는데도 오류가 발생할 수 있습니다.
WELD-000072 Managed bean declaring a passivating scope must be passivation capable
클래스 예:
@Named
@ConversationScoped
public class TransactionMatchController implements Serializable {
...
}
모든 @Interceptors가 분리 가능한 것을 확인합니다.
@Interceptor
@Transactional
public class TransactionInterceptor implements Serializable {
...
}
직렬화 가능해야 합니다.
이 답을 보세요.
https://community.jboss.org/thread/179828
베스트 앤더스
만들다DemoBeans
시리얼화된
@Named("DemoBeans")
@SessionScoped
public class DemoBeans implements Serializable
{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
주석을 사용하여 콩의 수동 동작을 활성화할 수도 있습니다.
@Stateful(수동 가능=true)
이 경우는, 시리얼 가능한 인터페이스를 실장할 필요는 없습니다.
안부 전해요.호르헤
Import 확인
(때로는 netbean이 다른 라이브러리의 다른 것을 사용하기도 합니다.)
예.javax.faces.view를 Import합니다.ViewScoped.javax.faces.bean을 Import하여 변경합니다.표시 범위
원인: org.jboss.weld. 예외.도입예외: WELD-000072:수동화 범위를 선언하는 빈은 수동화가 가능해야 합니다.Bean : Managed Bean [클래스 com.marcos.controller]수식자 [@Default @Named @Any]가 있는 PersonaBean]
내가 풀었어, CDI. 콩을 못알아봤지, 그냥 좀 더 분명히 했을 뿐이야.
@Named
@ViewScoped
public class PersonaBean implements Serializable {
@Inject
private IPersonaService service;
public void registrar() {
try {
service.registrar(null);
}catch (Exception e) {
e.printStackTrace();
}
}
}
솔루션을 제안합니다.
@Named ("PersonaBean")
@ViewScoped
public class PersonaBean implements Serializable {
@Inject
private IPersonaService service;
public void registrar() {
try {
service.registrar(null);
}catch (Exception e) {
e.printStackTrace();
}
}
}
언급URL : https://stackoverflow.com/questions/9760442/weld-000072-managed-bean-declaring-a-passivating-scope-must-be-passivation-capab
'source' 카테고리의 다른 글
mysql_real_escape_string 함수의 PDO는 무엇입니까? (0) | 2022.11.08 |
---|---|
Kubernetes 클러스터 내에서 호스트 이름으로 MariaDB에 연결할 수 없음 (0) | 2022.11.08 |
MYSQL에서 모든 테이블과 필드를 utf-8-bin 대조로 변경하는 스크립트 (0) | 2022.11.08 |
속도 템플릿과 유사한 Java 문자열 치환 (0) | 2022.11.08 |
VueJS 자동화 - 테스트 카페와나이트워치 - 장점 / 단점 (0) | 2022.11.08 |