2013-05-29 2 views
0

글래스 피쉬 3.1.2.2를 사용하고 있습니다. 클래스 수준에서 TransactionManagementType.BEAN을 설정 한 EJB (MyBean)가있는 응용 프로그램이 있습니다. 비즈니스 메소드에서 데이터 소스에서 연결을 가져오고, 자동 커밋을 연결에서 거짓으로 설정하고, 데이터베이스 테이블에 대해 INSERT/DELETE/UPDATE를 수행하고 마지막에 커밋하지 않습니다. 그런 다음 별도의 클래스로 구현 된 MyBean을 사용하여 비즈니스 메소드를 호출하는 웹 서비스 (MyWebService)가 있습니다. 클라이언트 응용 프로그램은 MyWebService의 WSDL로 생성 된 웹 서비스 클라이언트가있는 별도의 Java 응용 프로그램입니다. 클라이언트가 시간 초과를 10 초로 설정했습니다. MyWebService에 대한 호출이 10 초 이상 걸리면 클라이언트는 시간 초과 예외를 얻습니다. 이거 괜찮아. 내가 가진 문제점은 글래스 피쉬 로그에서 MyBean이 모든 작업을 수행하고 커밋 된 것을 볼 수 있지만 데이터베이스에는 데이터가 표시되지 않습니다. 이것은 나를 미치게합니다! 아무도 무슨 일이 일어나고 있는지 알고 있습니까?웹 서비스 시간 초과시 EJB 커밋

답변

0

웹 서비스, Java EE 또는 GlassFish조차도 유죄 당사자가 아닙니다. 유죄가 입증 된 당사자는 클라이언트이며 데이터베이스에서도 일부 업데이트를 수행합니다. 클라이언트는 예상 된 결과를 덮어 쓸 책임이 있습니다.

관련 문제