Hi Marcel,
Thanks for your help.

On 6 Mar 2014, at 10:28, Marcel Offermans wrote:

> The error message states the command cannot be found. That's probably either 
> caused by the fact that the bundle that supplies this command is not yet 
> started, or the bundle is missing altogether.

I understand what the error means, but "bundle" doesn't seem to be quite a 
regular command (nor does loadClass in this case)?

> Remember that shell commands are registered "whiteboard style" meaning that 
> if you startup a framework and immediately execute a script, it might fail 
> because not all of the command bundles have been started yet.

I guess my question is, where does the bundle "command" come from, and if it's 
in org.apache.felix.shell, how can I access it without loading the shell bundle 
(which causes my application to crash as, I guess, they don't have a stdin).

> A simple way to test that is to start your script with the 'help' command, 
> which lists all available commands.

The output from help is identical in both the development and deployment 
environments.

felix:bundlelevel
felix:cd
felix:frameworklevel
felix:headers
felix:help
felix:inspect
felix:install
felix:lb
felix:log
felix:ls
felix:refresh
felix:resolve
felix:start
felix:stop
felix:uninstall
felix:update
felix:which
obr:deploy
obr:info
obr:javadoc
obr:list
obr:repos
obr:source
scr:config
scr:disable
scr:enable
scr:info
scr:list


> 
> Greetings, Marcel
> 
> 
> On 06 Mar 2014, at 11:16 am, Dan <[email protected]> wrote:
> 
>> Unfortunately, when I come to execute the first command on a deployment 
>> machine, I get:
>> 
>> org.apache.felix.gogo.runtime.CommandNotFoundException: Command not found: 
>> bundle
>> 
>> In production, the application runs without org.apache.felix.gogo.shell, and 
>> with my own bundle which looks like this:
>> 
>> ByteArrayOutputStream out = new ByteArrayOutputStream();
>> ByteArrayOutputStream err = new ByteArrayOutputStream();
>> commandSession = commandProcessor.createSession(System.in, new 
>> PrintStream(out), new PrintStream(err));
>> 
>> and calls 
>> 
>> private synchronized String executeCommand(String command) throws Exception {
>>      out.reset();
>>      err.reset();
>>      Object result = commandSession.execute(command);
>>      String reply = out.toString() + err.toString();
>>      return reply;
>> }
>> 
>> when commands are received from the server.
>> 
>> Is there anything in this setup that would lead to the above error? 
>> (Something I'm missing from the gogo.shell bundle, for example?)
>> 
>> On 6 Mar 2014, at 09:39, Dan wrote:
>> 
>>> g! addcommand runtime ((bundle 0) loadClass java.lang.Runtime)
>>> g! addcommand rt (runtime:getRuntime)
>>> g! rt:maxMemory
>>> 1256456192
>>> 
>>> Thanks for the help, Dan.
>>> 
>>> On 6 Mar 2014, at 09:15, Daniel McGreal wrote:
>>> 
>>>> Success, thank you.
>>>> Going to try and reach the runtime now, unless someone can provide a hint?
>>>> 
>>>> I wish to call Runtime.maxMemory() for example
>>>> 
>>>> 
>>>> On 5 Mar 2014, at 17:06, Richard S. Hall wrote:
>>>> 
>>>>> g! addcommand system ((bundle 0) loadClass java.lang.System)
>>>> 
>>> 
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to