I'm running the Karaf Shell Console without OSGI ;-) but just as a simple CLI (java -CP HylaMain) like we have done also for Scalate ( https://github.com/scalate/scalate/blob/scala_2.10/scalate-tool/src/main/scala/org/fusesource/scalate/tool/ScalateMain.scala )
On Fri, Nov 29, 2013 at 10:48 AM, Jean-Baptiste Onofré <j...@nanthrax.net>wrote: > Instead of extending HelpAction (HelpAction requires additional > attributes/methods to override), I would try to extends > org.apache.karaf.shell.console.OsgiCommandSupport and define the > blueprint: > > @Command(scope = "hyla", name = "help", description = "Display this help") > public class MyHelp extends OsgiCommandSupport { > > public Object doExecute() throws Exception { > return null; > } > > } > > and in the associated blueprint: > > <command name="hyla/help"> > <action class="MyHelp"/> > </command> > > Regards > JB > > > On 11/29/2013 10:40 AM, Charles Moulliard wrote: > >> Yep. If required, I can provide a small project. >> >> @Command(scope = "hyla", name = "help", description = "Displays this help >> or help about a command") >> public class Help extends HelpAction { >> >> } >> >> >> >> On Fri, Nov 29, 2013 at 10:38 AM, Jean-Baptiste Onofré <j...@nanthrax.net >> >wrote: >> >> Hi Charles, >>> >>> do you have description attribute on the @Command annotation ? >>> >>> Regards >>> JB >>> >>> >>> On 11/29/2013 10:32 AM, Charles Moulliard wrote: >>> >>> 2.3.3 >>>> >>>> >>>> On Fri, Nov 29, 2013 at 10:31 AM, Jean-Baptiste Onofré <j...@nanthrax.net >>>> >>>>> wrote: >>>>> >>>> >>>> Hi Charles, >>>> >>>>> >>>>> what's the Karaf version (as it changed between 2.x and 3.x) ? >>>>> >>>>> Regards >>>>> JB >>>>> >>>>> >>>>> On 11/29/2013 10:18 AM, Charles Moulliard wrote: >>>>> >>>>> Hi, >>>>> >>>>>> >>>>>> For a documentation project, I'm currently creating a Java Command >>>>>> Line >>>>>> Tool client using our excellent Apache Karaf Shell Console. >>>>>> Nevertheless, >>>>>> when I try to get help from a command, Gogo & Felix returns a NPE >>>>>> >>>>>> HylaMain >>>>>> java.io.BufferedInputStream@9506dc4 >>>>>> hyla>echo blabla >>>>>> echo blabla >>>>>> blabla >>>>>> hyla>help echo >>>>>> help echo >>>>>> [main] ERROR org.apache.karaf.shell.console.jline.Console - Exception >>>>>> caught while executing command >>>>>> java.lang.NullPointerException >>>>>> at >>>>>> org.apache.karaf.shell.console.help.HelpAction. >>>>>> doExecute(HelpAction.java:40) >>>>>> at >>>>>> org.apache.karaf.shell.console.AbstractAction. >>>>>> execute(AbstractAction.java:33) >>>>>> at >>>>>> org.apache.felix.gogo.commands.basic.AbstractCommand.execute( >>>>>> AbstractCommand.java:35) >>>>>> at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:474) >>>>>> at org.apache.felix.gogo.runtime.Closure.executeStatement( >>>>>> Closure.java:400) >>>>>> at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108) >>>>>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183) >>>>>> at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120) >>>>>> at >>>>>> org.apache.felix.gogo.runtime.CommandSessionImpl.execute( >>>>>> CommandSessionImpl.java:89) >>>>>> at org.apache.karaf.shell.console.jline.Console.run(Console.java:173) >>>>>> at org.apache.karaf.shell.console.Main.run(Main.java:220) >>>>>> at org.apache.karaf.shell.console.Main.run(Main.java:164) >>>>>> at org.apache.karaf.shell.console.Main.run(Main.java:79) >>>>>> at com.redhat.gpe.hyla.tooling.HylaMain.main(HylaMain.java:34) >>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>>> at >>>>>> sun.reflect.NativeMethodAccessorImpl.invoke( >>>>>> NativeMethodAccessorImpl.java:39) >>>>>> at >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke( >>>>>> DelegatingMethodAccessorImpl.java:25) >>>>>> at java.lang.reflect.Method.invoke(Method.java:597) >>>>>> at com.intellij.rt.execution.application.AppMain.main( >>>>>> AppMain.java:120) >>>>>> Error executing command: java.lang.NullPointerException >>>>>> >>>>>> As this code is really hard to debug as we have embedded the code of >>>>>> org.apache.felix.gogo.runtime >>>>>> & org.apache.felix.gogo.commands in the jar of Karaf Shell Console, >>>>>> does >>>>>> anybody knows why I could get a NPE when we call this method. In debug >>>>>> mode, I confirm that the session object exists but the command is null >>>>>> (even if I'm able to recuperate the args 'help echo' and this command >>>>>> works >>>>>> 'echo blabla' >>>>>> >>>>>> Regards, >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>> Jean-Baptiste Onofré >>>>> jbono...@apache.org >>>>> http://blog.nanthrax.net >>>>> Talend - http://www.talend.com >>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>> Jean-Baptiste Onofré >>> jbono...@apache.org >>> http://blog.nanthrax.net >>> Talend - http://www.talend.com >>> >>> >> >> >> > -- > Jean-Baptiste Onofré > jbono...@apache.org > http://blog.nanthrax.net > Talend - http://www.talend.com > -- Charles Moulliard Apache Committer / Architect @RedHat Twitter : @cmoulliard | Blog : http://cmoulliard.github.io