此应用程序从oc4j迁移到weblogic . 几乎所有功能都运行良好 .
我们抛出的是CBCMException,它是RuntimeException的子类 . 当某些情况发生时 .
在oc4j中,我们过去常收到错误消息,如我们所指定的那样,请在搜索条件中应用更具体的条件,以便查看搜索结果...]
但是在weblogic中,这个异常包含在java.rmi.RemoteException下:我们没有得到CBCMException
有没有办法得到我们抛出的origianl异常,然后将supercalss修改为Exception .
这个例外在我们的项目中被广泛引用 .
java.rmi.RemoteException:EJB异常:;嵌套异常是:CBCMException [errorCode =请在搜索条件中应用更具体的条件,以便在weblogic上的weblogic.ejb.container.internal.EJBRuntimeUtils.throwRemoteException(EJBRuntimeUtils.java:106)中查看搜索结果...] . ejb.container.internal.BaseRemoteObject.handleSystemException(BaseRemoteObject.java:857)at weblogic.ejb.container.internal.BaseRemoteObject.handleSystemException(BaseRemoteObject.java:809)at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject . java:518)at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:49)at weblogic.ejb.container.internal.BaseRemoteObject .__ WL_postInvokeTxRetry(BaseRemoteObject.java:444)at weblogic.ejb.container.internal .SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:53)位于ae.co.etisalat.cbcm.web.util.search的ae.co.etisalat.cbcm.app.util.search.impl.SearchEJB_siuh74_EOImpl.selectMatchingRecords(未知来源) . SearchMod el.selectMatchingRecords(未知来源),位于ae.co.etisalat.cbcm.web.util.search.struts.SearchAction的ae.co.etisalat.cbcm.web.util.search.struts.SearchAction.searchResults(未知来源) . 在org.apache.struts的org.apache.struts.action.RerocessorProcessor.process(RequestProcessor.java:274)的org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)执行(Unknown Source) . 在javax的javax.servlet.http.HttpServlet.service(HttpServlet.java:727)的org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)上的action.ActionServlet.process(ActionServlet.java:1482) .loglet.http.HttpServlet.service(HttpServlet.java:820)at weblogic.servial.StubSecurityHelper $ ServletServiceAction.run(StubSecurityHelper.java:227)at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125 )at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:2) 6)在weblogic.servial.Filter.Ip.If.If.Filter(未知来源)的weblogic.servial.internal.FilterChainImpl上的weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) . doFilter(FilterChainImpl.java:56)位于weblogic的weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)的ae.co.etisalat.cbcm.web.util.security.LoginFilter.doFilter(未知来源) . servlet.internal.WebAppServletContext $ ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)位于weblogic.seternal.Web上的Web上的weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run(WebAppServletContext.java:3681)(AuthenticatedSubject . java:321)at weblogic.security.service.securityManager.runAs(SecurityManager.java:120)at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext .java:2183)在weblogic.servlet.int上在weblogic.work.ExecuteThread.run(ExecuteThread.java:209)的weblogic.work.ExecuteThread.run(ExecuteThread.java:178)中的ernal.ServletRequestImpl.run(ServletRequestImpl.java:1454)引起:CBCMException [errorCode = Kindly将更具体的标准应用于您的搜索条件,以便在ae.co.etisalat的ae.co.etisalat.cbcm.biz.util.search.persistencymapping.SearchManager.selectMatchingRecords(未知来源)查看您的搜索结果...] . 来自ae.co.etisalat.cbcm.app.util.search.impl.SearchEJBBean.selectMatchingRecords(未知来源)的cbcm.app.util.search.helper.SearchHelper.selectMatchingRecords(未知来源)
谢谢你的时间和回复 .
关于Muthuvel.P
1 回答
我通过在类中添加
@ApplicationException
解决了这个问题在<assembly descriptor>
中添加异常类名称 .