[求助]..新手!遇到struts调用sessionbean问题? 

..高手见笑了! 我用 EJB+struts在学习写一个类似购物店的网站!
弱弱的问一下! struts 中不能接收用户自己定义的Exception吗? 为什么? 我就遇到这样的问题 如下:
2004-06-09 15:45:20,220 INFO [org.apache.struts.action.RequestProcessor] Processing a 'GET' for path '/category'
2004-06-09 15:45:20,261 ERROR [org.apache.struts.action.RequestProcessor] No action instance for path /category could be created
java.lang.NoClassDefFoundError: erms/client/java/exceptions/SearchRecordException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:1610)
at java.lang.Class.getConstructor0(Class.java:1922)
at java.lang.Class.newInstance0(Class.java:278)
at java.lang.Class.newInstance(Class.java:261)
at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:219)
......
最后我改成系统的Exception就没了 !
....
我用一个stateful session bean 实现购物车!
但 页面上报 这样的错误:
HTTP ERROR: 500 ErmsCart not bound
RequestURI=/erms-ejb/cart.jspa !
可服务器没有错误信息!
编译同样没有问题 ..
请指点一下!

还有,我没有让 struts的action和 sessionbean直接交互! 在中间加了 一层! 希望完全隔离EJB层! ....但页面显示

HTTP ERROR: 500 erms/client/java/delegate/ErmsSessionDelegate
RequestURI=/erms-ejb/category.jspa

其中 ErmsSessionDelegate .java 是用来隔离的!
..mm是新手! 不知到这样的错误是怎么引起的! 在哪里或者如何可以看到具体的信息! 请指点一下吧! 万分感谢!

>struts 中不能接收用户自己定义的Exception吗
可以接受的。

谢谢banq大哥!

我看到了是因为找不到类而报错! 但SearchRecordException那个类就在那里呀!! .....不然我也不会想struts是不是不支持!


在struts-config.xml文件中

<action
path="/removeItem"
type="erms.web.struts.action.cart.ErmsRemoveItemAction"
name="ermsItemForm"
scope="request"
unknown="false"
validate="false"
>
<forward
name="success"
path="/cart.jspa"
redirect="false"
/>
</action>
<action
path="/cart"
type="erms.web.struts.action.cart.ErmsCartAction"
name="ermsCartForm"
scope="request"
unknown="false"
validate="false"
>
<forward
name="success"
path="/cart.jsp"
redirect="false"
/>
</action>

在 web.xml中是这样定义的
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.jspa</url-pattern>
</servlet-mapping>

为什么<forward>标签里的path的指向为什么会一会是*.jsp一会是*.jspa! 有什么区别吗?mm新接触struts!见笑了!

上贴没有显示出来 ! web.xml 文件中!
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.jspa</url-pattern>
</servlet-mapping>

servlet-mapping的定义

servlet-name: action
url-pattern : *.jspa

相关代码如下:
这是Delegate 的

public ErmsSessionDelegate getErmsSessionDelegate( )
throws Exception
{
ESDelegate = new ErmsSessionDelegate();
return ESDelegate;
}

调用的时候
ErmsSessionDelegate ESDelegate = getErmsSessionDelegate( );
category = ESDelegate.searchErmsCategory( categoryId );
这是cart的

public ErmsCartRemote getErmsCart( boolean create,
HttpServletRequest request )
throws Exception
{
HttpSession session = request.getSession( );
ErmsCartRemote cart = ( ErmsCartRemote ) session.getAttribute( CART_KEY );
if ( ( cart == null ) && create )
{
cart = ErmsCartUtil.getHome().create();
session.setAttribute( CART_KEY, cart );

}

return cart;
}