From: Guijarro, J. <jul...@hp...> - 2006-03-14 10:42:47
|
> However my components use methods I defined in a public class ("XmlFile") > which I did not make > remotely invocable. Is it the reason for all this? > If you want a component not to be "RMI" exported then you need to add the attribute "sfRemote false;" to its description and then you don't need to create its stubs.=20 In 1.5 it sometimes works because when the stubs are needed they are generated on the fly. -----Original Message----- From: sma...@li... [mailto:sma...@li...] On Behalf Of Xavier Grehant Sent: 13 March 2006 20:11 To: smartfrog-developer Subject: Re: [Smartfrog-developer] unnamed component. Class not found Hi Julio and all, I tried sth else: The temporary xsl file used for the transform was a local "XmlFile" object in the method belonging to the "XmlFile" class called by my component. There was no explicit filesystem where this file could be dropped. Java 1.5 could handle the job keeping it "virtual" but not java 1.4. So I split the component into 2: xsl generation and then, transform and this way it works. On 3/13/06, Guijarro, Julio <jul...@hp...> wrote: > Hi Xavier, > > I cannot see what is going wrong. Are you sure that all the stubs for > all the components are there. Java 1.5 generates the RMI stubs on the > fly and in Java 1.4 you need to use rmic. This is interesting. Under IntelliJ-IDEA there is a "package" onglet in "project" panel, where they list all available libraries so I could check all *_stub files were indeed there. However my components use methods I defined in a public class ("XmlFile") which I did not make remotely invocable. Is it the reason for all this? I set aside this hypothesis because it worked under java 1.5. But if java 1.5 generates stubs on the fly it changes the deal... You mentioned that the stubs > are there so I should assume that the error is coming from somewhere > else. > > Could you send us the complete stack trace (enable stacktrace in > bin/default.ini)? Here they are. Before line 2750 it's sfDeamon. > Also, you could get a cvs head check out and try your class again, just > to try. The version in cvs does not need the file rmitargets anymore and > generates the stubs automatically when needed. I tried this, too. > > The error that you get points that it cannot find the class that you > want to deploy which is usually caused by a missing/buggy jar file. Be > careful with duplicated jars in your classpath. I came across this problem before: 'could not seal... package already loaded' when I loaded the jars both in %PATH% and through the IDE settings. > > Julio Thanks a lot, Xavier > -----Original Message----- > From: sma...@li... > [mailto:sma...@li...] On Behalf Of > Xavier Grehant > Sent: 10 March 2006 17:11 > To: smartfrog-developer > Subject: [Smartfrog-developer] unnamed component. Class not found > > Hi, > > May I have help on this: > > I compile a component using javac1.4 (source 1.4 target 1.4), rmic > stubversion 1.2. > Compilation works well, stubs are generated. > > It runs well with jdk1.5 but fails on jdk1.4: > jvm 1.5: > [TRACE][RMI TCP Connection(2)-xxx.xxx.xxx.xx] SFCORE_LOG - sfResolved: > HERE sfClass to ch.cern.openlab.smartfrog.xmlUtil.ForceParamValueImpl > ** > org.smartfrog.sfcore.componentdescription.ComponentDescriptionImpl.sfRes > olve(ComponentDescriptionImpl.java:479) > ** > [TRACE][RMI TCP Connection(2)-xxx.xxx.xxx.xx] HOST > "xxx.xxx.xxx.xx":rootProcess - sfResolved HERE 'sfLog' to 'HOST > "128.141.130.30":rootProcess' ** > org.smartfrog.sfcore.prim.PrimImpl.sfResolveHere(PrimImpl.java:179) ** > etc.. > > jvm 1.4: > [TRACE][RMI TCP Connection(2)-xxx.xxx.xxx.xx] SFCORE_LOG - sfResolved: > HERE sfClass to ch.cern.openlab.smartfrog.xmlUtil.ForceParamValueImpl > ** > org.smartfrog.sfcore.componentdescription.ComponentDescriptionImpl.sfRes > olve(ComponentDescriptionImpl.java:479) > ** > [ERROR][RMI TCP Connection(2)-xxx.xxx.xxx.xx] SFCORE_LOG - > SmartFrogDeploymentException: unnamed component. Class not found, > cause: java.lang.ClassNotFoundException: forName: Cannot find > ch.cern.openlab.smartfrog.xmlUtil.ForceParamValueImpl, reference: HERE > sfClass, deployedContext: included, data: sfCodeBase "default"; > ... > org.smartfrog.sfcore.processcompound.sfProcessName "rootProcess"; > ** org.smartfrog.sfcore.logging.LogImpl.error(LogImpl.java:765) ** > <SmartFrogDeploymentException: unnamed component. Class not found > cause: java.lang.ClassNotFoundException: forName: Cannot find > ch.cern.openlab.smartfrog.xmlUtil.ForceParamValueImpl > reference: HERE sfClass > deployedContext: included > data: sfCodeBase "default"; > > I suspect it has something to do with xerces. I use > org.apache.xml.serialize.OutputFormat and XMLSerializer in a class > imported by my component but when I use this class outside smartfrog > with both jvms 1.4 and 1.5 it works. It even works fine when used by a > smartfrog component on a jvm 1.5. It generates an xsl file in adding > elements into a sax contentHandler. > > I can't find out what's wrong. Have you ever encountered sth similar? > > Attached: diagnostic report when it fails (jvm 1.4) and differences > with diagnostic when it works fine (jvm 1.5). > > > Thanks in advance, > Xavier > > > ------------------------------------------------------- > This SF.Net email is sponsored by xPML, a groundbreaking scripting language > that extends applications into web and mobile media. Attend the live webcast > and join the prime developer group breaking into this new coding territory! > http://sel.as-us.falkag.net/sel?cmdlnk&kid=110944&bid$1720&dat=121642 > _______________________________________________ > Smartfrog-developer mailing list > Sma...@li... > https://lists.sourceforge.net/lists/listinfo/smartfrog-developer > |