Difference between revisions of "OSGI HengSin"

From ADempiere
Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.
(Photo of Heng Sin which he gave me long time ago.)
m (OSGI Roadmap - November 2010)
Line 95: Line 95:
 
***This is solved (for MacBook users) by going to your System Preferences > Java > and putting the 1.6 as top of list. So this is solved - [[User:Red1|Redhuan D. Oon]] 00:34, 20 November 2010 (UTC)
 
***This is solved (for MacBook users) by going to your System Preferences > Java > and putting the 1.6 as top of list. So this is solved - [[User:Red1|Redhuan D. Oon]] 00:34, 20 November 2010 (UTC)
  
==Latest Status==
+
=Latest Status=
*This project is proven launchable from Eclipse and from binaries. (If it works on a not so Java-centric MacBook, it can work anywhere else).
+
*This project is proven launchable from Eclipse and from binaries. (If it works on a not-so-Java-centric MacBook, it can work anywhere else).
 
*ZK Ajax UI seems to work as far as any trashing i done so far - new windows, reports, views, accts, JSR223 Rules, etc.
 
*ZK Ajax UI seems to work as far as any trashing i done so far - new windows, reports, views, accts, JSR223 Rules, etc.
 
*Java Client works also as above just that the Accounts Viewer definitely get stuck but exitable. (will confirm from a Windows platform later).
 
*Java Client works also as above just that the Accounts Viewer definitely get stuck but exitable. (will confirm from a Windows platform later).
Line 102: Line 102:
 
*I have to give a B+ for this project even though it is at alpha stage.
 
*I have to give a B+ for this project even though it is at alpha stage.
  
==How Do You Score?==
+
=How Do You Score?=
 
Tell me what marks you like to give my documenting work here. I do not expect an A+ but who knows. :)
 
Tell me what marks you like to give my documenting work here. I do not expect an A+ but who knows. :)
 
* (sign here with marks)
 
* (sign here with marks)

Revision as of 18:16, 19 November 2010

Heng Sin seen here with two of his Java assistants

Project Space

  • Heng Sin implementation of OSGI is done in another project space under Kenai.
  • His version is based on 3.6.0LTS
  • It is considered alpha stage as certain issues such as Java Client Webstart and refactoring is pending testing.
  • It is due for better use in 2011.

Improvements

WorkflowUI.gif
  • One of the improvements there is the Workflow Editor where boxes look more UML-like.

Backyard Info

  • There is something newbie setup experience documented here.

OSGI Roadmap - November 2010

  • Hengsin is doing more refactoring to the source in his Kenai repository.
    • Callout package is now a separate bundle but Hengsin wants to rewrite it when he can find time later.
    • The launching products are separated into 'adempiere-server' and 'adempiere-client'.
    • Buckminster, a Maven-like plugin in Eclipse is used to manage the import of plugins and builds.
    • The source is launchable from Eclipse for ZKAjax UI and SwingClient.
    • Hengsin is trying to release a beta candidate in a month or so.
    • Meanwhile Redhuan D. Oon is writing up his own guide and experience as led by Hengsin in his new OSGI update.
    • More feedback on tests will be organised and reported in the Kenai project forum.

Note to MacBook users

ADempiere is now reduced to pure plugins - Eclipse view of OSGI Project by Heng Sin
  • Apple Mac OSX has an issue with launching X on 2nd thread and this is solved by removing the -ws ${target.ws} argument in the launch script. (Hengsin)
  • When debugging from Eclipse, you may need to hack the Tomcat.server.xml to point to your port 8088, and https to 4443

Preparing Your Eclipse IDE

  • You should use the latest Helios version with Equinox and Buckminster plugins udpated.

Getting the Kenai Project into your Eclipse

  • Firstly you should have got a HG Clone into your PC from the Mercurial repository.
  • In a fresh workspace of Eclipse, you create a new empty EquinoxTarget.platform (via Preferences>Plugin)
  • Then Import Projects > Select an import source from Buckminster > Materialize from Buckminster.
    • Browse for the URL under the plugin org.adempiere.sdk.feature selecting the adempiere.cquery.
    • Eclipse will import from the web all the needed plugins into the new target platform folder you created.

Launching from Eclipse

  • Under the Run As Configurations you will see some launch items.
  • Select install.app (CLI) or install.console.app (GUI) to set the properties file. This is similar to RUN_setup in ADempiere speak.
  • Launch server.product (RUN_Server2.sh in ADempiere speak) to get the Web UI working.
    • You now need to access the Web UI using, http://<localhost>:<port>/ without the /admin suffix.
  • Launch swingclient.product to get the JavaClient up and running.

Build and deploying binary

There are two binaries or 'products' created from this OSGI project. One is adempiere-server for launching the server-side Web UI service and adempiere-client for launching the Java Client.

Server Side

  • Go to the plugin (at your Eclipse Package Explorer) right click at org.adempiere.server-feature
  • Select Buckminster > Invoke Action
  • Select create.product
  • In the Properties file line, select workspace again the same i.e. org.adempiere.server-feature drill down to buckminster.properties (or any other depending on your OS) and you should end up with something like: /Users/red1/Documents/workspace/hengsin~development/org.adempiere.server-feature/buckminster.properties in the field. Give it an OK.
  • Press OK to the Buckminster action dialog box and this will take some minutes to compile
  • Find under your desktop a buckminster.output folder
    • Look for a particular folder that contains adempiere-server folder. (hint: org.adempiere.server_1.0.0-eclipse.feature).
    • Put that to your Applications-Home (server-side) location and continue in ADempiere speak.

Client Side

  • Go to the plugin (at your Eclipse Package Explorer) right click at org.adempiere.ui.swing-feature
  • Select Buckminster > Invoke Action
  • Select create.product
  • In the Properties file line, select workspace again the same i.e. org.adempiere.ui.swing-feature drill down to buckminster.properties (or any other depending on your OS) and you should end up with something like: /Users/red1/Documents/workspace/hengsin~development/org.adempiere.server-feature/buckminster.properties in the field. Give it an OK.
  • Press OK to the Buckminster action dialog box and this will take some minutes to compile
  • Find under your desktop a buckminster.output folder
    • Look for a particular folder that contains adempiere-client folder. (hint: org.adempiere.ui.swing_1.0.0-eclipse.feature).
    • Put that to your Applications-Home (client-side) location and continue in ADempiere speak.


Launching from Binary

adempiere-server

  • You should have the following shell or batch executables in your adempiere-server (this is now your ADempiere_Home but server side).
    • setup.sh (previously RUN_setup.sh)
    • setup-alt.sh (this works better in my case)
    • adempiere-server.sh (RUN_server2.sh)
    • adempiere-client.sh (RUN_Adempiere.sh)
    • console-setup.sh
  • You may need to give chmod 777 to your HOME directory first
  • When you ./adempiere-server.sh you will get to run the Web UI as http://<localhost>:<port>/
  • If it does not run you can within the CLI Terminal window look for OSGI bundle status by keying in 'ss'.
    • Look for the bundle number of the org.adempiere.ui or ..zk bundles.
    • Key in start <bundle no.> and try the Web UI again.

adempiere-client

  • You should have the adempiere.client.sh or .bat in your <ADempiere_Home/client side>
  • You just run this shell accordingly similar to the advice for server side.

Issues

  • As of today when launching adempiere-client binary i have all the adempiere bundles not resolved and when started will give such The bundle "org.adempiere.ui_1.0.0.v20101116-0531 [58]" could not be resolved. Reason: Missing Constraint: Bundle-RequiredExecutionEnvironment: JavaSE-1.6
    • There is documentation on this from the web and i will spend some time reading first. - Redhuan D. Oon 13:56, 17 November 2010 (UTC)
      • This is solved (for MacBook users) by going to your System Preferences > Java > and putting the 1.6 as top of list. So this is solved - Redhuan D. Oon 00:34, 20 November 2010 (UTC)

Latest Status

  • This project is proven launchable from Eclipse and from binaries. (If it works on a not-so-Java-centric MacBook, it can work anywhere else).
  • ZK Ajax UI seems to work as far as any trashing i done so far - new windows, reports, views, accts, JSR223 Rules, etc.
  • Java Client works also as above just that the Accounts Viewer definitely get stuck but exitable. (will confirm from a Windows platform later).
  • Log file or log tracing has an issue. It stops at the message 'Adempiere Log (CLogConsole)'.
  • I have to give a B+ for this project even though it is at alpha stage.

How Do You Score?

Tell me what marks you like to give my documenting work here. I do not expect an A+ but who knows. :)

  • (sign here with marks)