Return-Path: Delivered-To: apmail-openejb-commits-archive@www.apache.org Received: (qmail 29689 invoked from network); 25 Sep 2009 16:00:47 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 25 Sep 2009 16:00:47 -0000 Received: (qmail 91669 invoked by uid 500); 25 Sep 2009 16:00:47 -0000 Delivered-To: apmail-openejb-commits-archive@openejb.apache.org Received: (qmail 91652 invoked by uid 500); 25 Sep 2009 16:00:47 -0000 Mailing-List: contact commits-help@openejb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openejb.apache.org Delivered-To: mailing list commits@openejb.apache.org Received: (qmail 91642 invoked by uid 99); 25 Sep 2009 16:00:47 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 25 Sep 2009 16:00:47 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 25 Sep 2009 16:00:38 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 744D5234C4B9 for ; Fri, 25 Sep 2009 09:00:18 -0700 (PDT) Message-ID: <2129476992.1253894418475.JavaMail.jira@brutus> Date: Fri, 25 Sep 2009 09:00:18 -0700 (PDT) From: "Jean-Louis MONTEIRO (JIRA)" To: commits@openejb.apache.org Subject: [jira] Closed: (OPENEJB-965) http://www.nabble.com/exceptions-handling-with-Webservices-td19668275.html In-Reply-To: <1896306883.1228139924250.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/OPENEJB-965?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jean-Louis MONTEIRO closed OPENEJB-965. --------------------------------------- Resolution: Fixed Fix Version/s: 3.1.2 TODO: create a test case for that ... I only have a sample/itest. The EjbMethodInvoker will probably change when going to CXF 2.x, so we definitely have to enhance all tests around our web service implementation. > http://www.nabble.com/exceptions-handling-with-Webservices-td19668275.html > -------------------------------------------------------------------------- > > Key: OPENEJB-965 > URL: https://issues.apache.org/jira/browse/OPENEJB-965 > Project: OpenEJB > Issue Type: Bug > Components: webservices > Affects Versions: (trunk/openejb3) > Environment: All > Reporter: Jean-Louis MONTEIRO > Assignee: Jean-Louis MONTEIRO > Fix For: 3.1.2 > > Attachments: patch-openejb-965.txt > > > As this problem becomes critical for applications, I have decided to open a JIRA. > The full description is available at http://www.nabble.com/exceptions-handling-with-Webservices-td19668275.html > Here are some thoughts. > In the intercept method of the EjbInterceptor class (openejb-cxf module), we can either directly call the target EJB bean (when no handler has been defined) or delegate to the CXF chain when handlers have been defined. > Regarding the first case, when an ApplicationException is thrown. This exception is caught by the preEjbInvoke method (from the EjbMethodInvoker). The preEjbInvoke method registers all exceptions as UNCHECKED so the client always receives a SOAPFaultException instead of the user defined application exception. > We can work around this problem by adding a dummy handler or change the test to be sure it's always false. > {code} > line 82: if (binding.getHandlerChain() == null || binding.getHandlerChain().isEmpty()) { > {code} > To conclude, invoking directly the target EJB bean does not handle exceptions correctly. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.