Hi jboss,

I found following articles to use Value Object with CMP:
 
http://xdoclet.sourceforge.net/valueobjects.html

I feel it's greate and I immediately tried it with JBoss 3.2.1(+Tomcat
4.1.24) and JBossIDE 1.2.0. However I user getter/setter for Value
Object(named AddressValue), I got following error message:

----------------------------------------------------
2003-08-10 06:51:07,746 ERROR [org.jboss.ejb.plugins.LogInterceptor] EJBExcepti
on:^M
javax.ejb.EJBException: Method is not a known CMP field accessor, CMR field acc
essor, or ejbSelect method: methodName=getAddressValue^M
        at org.jboss.ejb.plugins.cmp.bridge.EntityBridgeInvocationHandler.invok
e(EntityBridgeInvocationHandler.java:111)^M
        at org.jboss.proxy.compiler.Runtime.invoke(Runtime.java:59)^M
        at ossbook.eclipse.ejb.AddressBean$Proxy.getAddressValue(<generated>)^M

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)^M
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl
.java:39)^M
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
ssorImpl.java:25)^M
        at java.lang.reflect.Method.invoke(Method.java:324)^M
        at org.jboss.ejb.EntityContainer$ContainerInterceptor.invoke(EntityCont
ainer.java:1044)^M
----------------------------------------------------

I guess method for VO doesn't related field and it cause error. How
can I use VO setter/getter with JBoss? My code is like this:

/**
 * @ejb.bean
 *      description = "Address Entity Bean" 
 *      name = "Address"
 *      type = "CMP"
 *      cmp-version = "2.x"
 *      view-type = "remote"
 *      jndi-name = "ejb/address"
 *      primkey-field = "userid"
 *
 * @ejb.transaction 
 *      type = "Required"
 * 
 * @ejb.value-object 
 *      name = "Address"
 *      match = "*"
 * 
 * @ejb.persistence 
 *      table-name = "address" 
 */
public abstract class AddressBean implements EntityBean {

 /** @ejb.interface-method */
  public abstract void setAddressValue(AddressValue address);

 /** @ejb.interface-method */
  public abstract AddressValue getAddressValue();

  // following are general CMP setting......
 /** @ejb.interface-method 
   * @ejb.pk-field 
   */
  public abstract String getId();

  /** @ejb.interface-method */
  public abstract void setId();

 /** 
   * @ejb.interface-method 
   * @ejb.persistence 
   * ...
   */
  public abstract String getParam();

  /** @ejb.interface-method */
  public abstract void setParam();
...


regards,

Takashi Okamoto







-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to