Rainer Hahnekamp wrote:
I rarely ever access OOo using Java, so I can not comment with a lot of authority, but I can say that this question may be answered better on the dev mailing list.Hello everybody,
recently I came across a strange behaviour while accessing OpenOffice via UNO. In my application I make extensive usage of the Java Reflection and therefore I was very surprised when the XComponentLoader object returned as classname "$Proxy4". The classname is usually passed on to a method that analyzes it via Class.forName(). As you can imagine, this causes me a lot of trouble since $Proxy4 is not in my CLASSPATH or elsewhere.
Can someone explain this to me or even offer a solution to my problem?
Greetings,
-Rainer Hahnekamp
With that out of the way, I am not that surprised since what I expect to be transferred is a handle to the object that you want to use. I expect that an UNO call is always similar to a remote call, so I would not expect you to be able to instantiate an instance for most objects directly. I expect that you will probably need to use a factory to create your objects, or to access existing objects from another object.
UNO provides bridges to send method calls and receive return values between processes and between objects written in different implementation languages. The bridges use a special UNO remote protocol (urp) for this purpose which is supported for sockets and pipes. Both ends of the bridge must be UNO environments, therefore a language-specific UNO runtime environment to connect to another UNO process in any of the supported languages is required. These runtime environments are provided as language bindings.
I would expect, however, that the bridge classes should exist on your computer; anyway....
-- Andrew Pitonyak My Macro Document: http://www.pitonyak.org/AndrewMacro.sxw My Macro Book: http://www.hentzenwerke.com/catalog/oome.htm Free Info: http://www.pitonyak.org/oo.php
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
