All methods regardless of if they are valid getters or setters should be exposed via the invoke method (using an operation info).

-dain

On Feb 2, 2007, at 7:02 AM, anita kulshreshtha wrote:

Dain thanks! The test in org.apache.geronimo.kernel.SimpleGBeanTest was testing only the invocation of non getter/setter operations. Hence this
error did not show up. Surprisingly the rest of the server did not use
this! Any suggestions on how to handle this?

Thanks
Anita

--- Dain Sundstrom <[EMAIL PROTECTED]> wrote:

When that code used to be in the PersistenceUnitReference class when

you would deploy an application with a persistence unit reference and

you looked up that refernce... you would get an exception saying that

there is no operation named getEntityManagerFactory of that bean.

You can most likely reproduce this by creating a standard gbean like

this:

public class SomeGBean {
    private String foo;
    public String getFoo() { return foo; }
    public void setFoo(String foo { this.foo = foo; }
}

then call this

kernel.setAttribute(name, "foo", "bar");
assertEquals("bar", kernel.getAttribute(name, "foo"));
assertEquals("bar", kernel.invoke(name, "getFoo"));

I'd guess that the second call will fail with your patch, because the

the getter and setters exposed as operations (just as an attribute).

This is just my guess.

-dain

On Feb 1, 2007, at 8:14 PM, anita kulshreshtha wrote:

Dain,
   Could you please provide some information on how to reproduce
this
failure?

Thanks
Anita

--- Dain Sundstrom <[EMAIL PROTECTED]> wrote:

I think this has broken some stuff.  This piece of code in
PersistenceUnitReference is no longer working:

         entityManagerFactory = kernel.invoke(target,
"getEntityManagerFactory");

I'll try to code around the problem for this instance, but you may
want to roll back this commit.

-dain

On Jan 23, 2007, at 4:55 PM, [EMAIL PROTECTED] wrote:

Author: hogstrom
Date: Tue Jan 23 16:55:35 2007
New Revision: 499201

URL: http://svn.apache.org/viewvc?view=rev&rev=499201
Log:
GERONIMO-2607 : Deprecated old addOperation methods, added
private
addOperation methods
                updated GBeanInfoTest
                Modified GBeanOperation, this class is not
serialized

Modified:

geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GBeanInfoBuilder.java

geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GOperationInfo.java

geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/runtime/GBeanOperation.java

geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/
apache/geronimo/gbean/GBeanInfoTest.java

Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/
java/org/apache/geronimo/gbean/GBeanInfoBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/
geronimo-kernel/src/main/java/org/apache/geronimo/gbean/
GBeanInfoBuilder.java?view=diff&rev=499201&r1=499200&r2=499201




======================================================================

========
---
geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GBeanInfoBuilder.java (original)
+++
geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GBeanInfoBuilder.java Tue Jan 23 16:55:35
2007
@@ -403,23 +403,23 @@

     /**
      * @deprecated
-     */
+     */
     public void addOperation(String name) {
-        addOperation(new GOperationInfo(name, NO_ARGS, ""));
+        //addOperation(new GOperationInfo(name, NO_ARGS, ""));
     }

     /**
      * @deprecated
      */
     public void addOperation(String name, Class[] paramTypes) {
-        addOperation(new GOperationInfo(name, paramTypes, ""));
+        //addOperation(new GOperationInfo(name, paramTypes,
""));
     }

-    public void addOperation(String name, String returnType) {
+    private void addOperation(String name, String returnType) {
         addOperation(new GOperationInfo(name, NO_ARGS,
returnType));
     }

-    public void addOperation(String name, Class[] paramTypes,
String returnType) {
+    private void addOperation(String name, Class[] paramTypes,
String returnType) {
         addOperation(new GOperationInfo(name, paramTypes,
returnType));
     }


Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/
java/org/apache/geronimo/gbean/GOperationInfo.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/
geronimo-kernel/src/main/java/org/apache/geronimo/gbean/
GOperationInfo.java?view=diff&rev=499201&r1=499200&r2=499201




======================================================================

========
---
geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GOperationInfo.java (original)
+++
geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/
apache/geronimo/gbean/GOperationInfo.java Tue Jan 23 16:55:35
2007
@@ -38,7 +38,7 @@
     /**
      * The return type of this method.
      */
-    private final String type;
+    private final String returnType;

     /**
      * Parameters of this method.
@@ -54,9 +54,9 @@
         this(name, name, Collections.EMPTY_LIST, type);
     }

-    public GOperationInfo(String name, Class[] paramTypes,
String

type) {
+    public GOperationInfo(String name, Class[] paramTypes,
String

returnType) {
         this.name = this.methodName = name;
-        this.type = type;
+        this.returnType = returnType;
         String[] args = new String[paramTypes.length];
         for (int i = 0; i < args.length; i++) {
             args[i] = paramTypes[i].getName();
@@ -64,17 +64,17 @@
         this.parameters = Collections.unmodifiableList
(Arrays.asList(args));
     }

-    public GOperationInfo(String name, String[] paramTypes,
String

type) {
-        this(name, name, Arrays.asList(paramTypes), type);
+    public GOperationInfo(String name, String[] paramTypes,
String

returnType) {
+        this(name, name, Arrays.asList(paramTypes), returnType);
     }

-    public GOperationInfo(String name, List parameters, String
type) {

=== message truncated ===




______________________________________________________________________ ______________
It's here! Your new message!
Get new email alerts with the free Yahoo! Toolbar.
http://tools.search.yahoo.com/toolbar/features/mail/

Reply via email to