Monday, November 14, 2016

Access Felix Gogo Shell in Liferay 7

Felix Gogo shell is command line interface to manage bundles in the OSGi container. We have defined commands are available for Felix Gogo shell, form these we can interact with OSGi container and manage the bundles which are deployed in the OSGi container.

We can manage bundles lifecycle like install, start, stop and uninstall bundles from OSGi container.


Liferay 7 also have used Apache Felix Gogo shell to interact with Liferay Portal Module framework. We can deploy Liferay Application bundles and activate and deactivate bundles.
To access Felix Gogo shell in Liferay 7 Portal we need telnet client from that we can access Felix Gogo shell.

Windows 7 and 8 Telnet client not enabled in the machine so first we need to enable telnet in our windows machine.

Telnet session on Windows

Click Start > Control Panel.


Click on Programs


Click Programs and Features.



Click Turn Windows features on or off.


In the Windows Features dialog box, check the Telnet Client check box.



Click OK. The system installs the appropriate files. This will take a few seconds to a minute.

Once telnet successfully installed in the machine then we can open the telnet session by using windows command prompt.

Open a Telnet session

Open windows command prompt and Type “telnet” and press ENTER.



The Telnet> prompt is displayed


Access Felix Gogo shell

To access Felix Gogo shell in Liferay portal we need to start Liferay portal. Based on your operating system go to tomcat bin directory and use server start-up command.


Windows

startup.bat

Linux

/startup.sh


Open Windows command prompt go to Liferay Tomcat bin directory then use above commands to start Liferay 7 portal server. When Liferay Portal Started then OSGi container also started and required bundles are installed and started in the OSGi container. Liferay 7 have used Equinox OSGi implementation container.



Apache Felix Gogo shell implemented as there bundles


org.apache.felix.gogo.command_0.12.0
org.apache.felix.gogo.runtime_0.10.0
org.apache.felix.gogo.shell_0.10.0


When Liferay 7 Portal started then three bundles are installed in the Equinox OSGi container and it will be started automatically.

All the information we can find in the Liferay Logs as info messages



Liferay 7 Portal have portal configuration in the “portal.properties” from these properties Portal Module frame work will start, required bundles will install and started automatically. Apart from Felix Gogo shell there are many bundles are installed and started while starting Liferay portal server.

The following are the important Liferay 7 portal properties related to Felix Gogo shell.

               
module.framework.enabled=true

module.framework.initial.bundles=\
    felix-fileinstall.jar@start,\
    ${extra.bundles}/org.apache.felix.gogo.command-0.12.0.jar@start,\
    ${extra.bundles}/org.apache.felix.gogo.runtime-0.10.0.jar@start,\
    ${extra.bundles}/org.apache.felix.gogo.shell-0.10.0.jar@start,\
    ${extra.bundles}/org.eclipse.equinox.console_1.0.0.v20120522-1841.jar@start

module.framework.properties.osgi.console=localhost:11311


Access Felix Gogo shell

Open windows command prompt and use following command to access Felix Gogo shell. Gogo shell running on 11311 port.


telnet localhost 11311




Issue the above command and press the enter then Felix Gogo shell session will open



Now we can use all Felix Gogo shell defied commands to manage bundles in the OSGi container.

Use lb command to see list of bundles available in the OSGi container


Author

                             

Popular Posts

Recent Posts

Recent Posts Widget