Difference between pages "OSGI HengSin" and "User:SDGathman"

From ADempiere
(Difference between pages)
Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.
(solved WFNode)
 
 
Line 1: Line 1:
[[Image:Hengsin.jpg|thumb|300px|Heng Sin seen here with two of his technology assistants]]
+
{{Userboxtop}}
 +
{{User real name|Stuart Gathman}}
 +
{{User en}}
 +
{{User US}}
 +
{{User Sourceforge|http://sourceforge.net/users/CustomDesigned/}}
 +
{{User employee of|[[Image:StuartGathman.jpg|35px]]|[[Image:bms_logo.gif|60px]]}}
 +
{{Userboxbottom}}
  
=Project Space=
 
*[[User:Hengsin|Low Heng Sin]] implementation of OSGI is done in another project space under [http://kenai.com/projects/hengsin/pages/Home Kenai].
 
*His version is based on 3.6.0LTS
 
*It is undergoing extensive refactoring by Heng Sin and testing review documentation by [[User:Red1|Redhuan D. Oon]].
 
*It is due for beta release as early as December-end, 2010.
 
  
=Backyard Info=
 
*There is some newbie setup experience documented [[Talk:Mercurial_Test_Environment#Pointing_to_Heng_Sin's_Kenai_Project|here]].
 
  
=Improvements=
 
[[Image:WorkflowUI.gif|500px|right]]
 
*Lighter and smaller due to change of App Server to Tomcat instead of JBoss.
 
*Workflow Editor boxes look more UML-like*.
 
*Managing the crossing of IDs among different instances with [[OSGI HengSin/UUID Generator]].
 
*Exporting any Window in [[OSGI HengSin/File2PackZip|2Pack format]].
 
  
=OSGI Roadmap - November 2010=
+
SDGathman is Stuart Gathman, from Fairfax, VA, USA.  
*Hengsin is doing more refactoring to the source in his [http://kenai.com/projects/hengsin/sources/development/history Kenai repository].
+
** [[Callout]] package is now a separate bundle. So is [[2Pack]] but Hengsin wants to [[OSGI_HengSin/2Pack|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.**
+
** More feedback on tests will be organised and reported in [[OSGI Hengsin/Beta]] and the [http://kenai.com/projects/hengsin/forums Kenai project forum].
+
  
==Preparing Your Eclipse IDE==
+
[[Image:bms_logo.gif]]
[[Image:HengSin_OSGI.gif|thumb|450px|right|ADempiere is now reduced to pure plugins - View of OSGI Project within Eclipse]]
+
  
*You should use the latest Helios version with Equinox and Buckminster plugins udpated.
+
You may email him at [mailto:stuart@bmsi.com bmsi.com]
  
==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==
+
[[Image:StuartGathman.jpg|200px]]
[[Image:OSGILaunch.gif|thumb|right|400px|Launch scripts already prepared to appear in Eclipse project]]
+
We first setup the properties file one time. You can do the following by giving the values that you already have for your current ADempiere setup in the same machine. So it will reuse your DB.
+
*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 can access the Web UI using, <nowiki>http:</nowiki>//<localhost>:<port>/ without the /admin suffix.
+
*Launch '''swingclient.product''' to get the JavaClient up and running.
+
 
+
==Build and deploying binary==
+
[[Image:Buckminster.gif|thumb|400px|right|Buckminster way from now on. Use it to clean and build the project or any bundles. Notice the expanded SDK tree which is used earlier.]]
+
 
+
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==
+
[[Image:OSGI_console_view.gif|thumb|350px|OSGI console view. You can examine each bundle's status and control them individually]]
+
===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
+
*You have to run '''setup-alt''' to get your tomcat.server.xml settings right.
+
*When you ./adempiere-server.sh you will get to run the Web UI as <nowiki>http://</nowiki><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. - [[User:Red1|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 - [[User:Red1|Redhuan D. Oon]] 00:34, 20 November 2010 (UTC)
+
*Other issues of launching can be resolved by checking and validating the plugins at the launch config window, ensuring args has ''-console'' added.
+
 
+
=Latest Status - Kenai Revision: 6600=
+
[[Image:Red1_hengsin.jpg|thumb|350px|A better idea upfront - [[User:Red1|Redhuan D. Oon]] tuning in to the Architect, [[User:Hengsin|Low Heng Sin]] ]]
+
*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).
+
**Debugged this is probably caused by 'IncompatibleClassChangeError' on JTable. (in progress). - [[User:Red1|Redhuan D. Oon]] 02:56, 21 November 2010 (UTC)
+
**Found out that this is due to bundle split of the ''org.compiere.report.core'' between BASE and UI.SWING bundles. Temporary refactoring workaround by moving the entire BASE.org.compiere.report.core to UI.SWING. Now the JTable works for Account Viewer. - [[User:Red1|Redhuan D. Oon]] 14:41, 21 November 2010 (UTC)
+
***Resolved by Hengsin [http://kenai.com/projects/hengsin/sources/development/revision/6584 revision 6584 here].
+
*Log file or log tracing has an issue. It stops at the message 'Adempiere Log (CLogConsole)'.
+
**False alarm. I traced it to find out that the Log file is written at /Users/red1/Log/<name of log file> as timestamped in *** 2010-12-02 20:38:10.527 Adempiere Log (CLogConsole) ***
+
**However the checkbox to create TraceFile in Preferences has no effect. This is non critical issue. The Kenai project is thus regarded very testable - [[User:Red1|Redhuan D. Oon]] 12:55, 2 December 2010 (UTC)
+
*Meanwhile all further issues and related version changes will be tracked here at [[OSGI_HengSin/Issues]]. It also contain related documented learning experience.
+
*I have to give a B+ for this project even though it is at alpha stage.
+
 
+
=FootNotes=
+
<nowiki>*</nowiki>Execute this code in your DB to get the Workflow Editor view rightly positioned:
+
<code>
+
UPDATE ADEMPIERE.AD_WF_Node SET xposition = 1, yposition = 1;
+
</code><br>
+
<nowiki>**</nowiki>Testing is done by basing on the DB of a working ADempiere 3.6.0LTS. So you should have that running in order to follow the actions here.
+
<br>
+
<nowiki>***</nowiki>You have to create an empty folder preferably same name as your target.platform in the workspace project folder. During creation in Preferences>Plugin>TargetPlatform>Add>Empty>Directory, point your target.platform to that folder. During materializing you will notice that folder getting populated (immediately you get artifacts.xml and later, plugin folder).
+
:If it times out with failure to read from remote error, and your Package Explorer is still empty, repeat the ''Import Projects'' step and it will resume from where it stops.
+
<br>
+
<nowiki>****</nowiki>There may be other non-started bundles you need to manually START:
+
----For adempiere-server
+
*org.adempiere.tomcat.config
+
*org.eclipse.gemini.web.tomcat
+
*org.adempiere.webstore
+
----For adempiere-client (add -console arg in the adempiere-client.sh if it is not there)
+
 
+
*org.eclipse.core.runtime
+
*org.eclipse.equinox.event
+
*org.eclipse.equinox.ds
+
*org.eclipse.equinox.services
+
*org.adempiere.base
+
 
+
==Note to MacBook users==
+
*Apple Mac OSX has an issue with launching X on 1st 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
+
**Resolved in latest build. Tomcat's server.xml is properly set during install.app.
+
**To check, go to ''org.adempiere.tomcat.config''/META-INF/tomcat/server.xml.
+
 
+
==Full Beta Testing==
+
*In preparation for full beta release and testing please go to [[OSGI Hengsin/Beta]].
+
 
+
=Download=
+
*[http://sourceforge.net/projects/adempiere/files/OSGI/ OSGI Download Directory] as of Revision 6643.
+
**[http://sourceforge.net/projects/adempiere/files/OSGI/adempiere-client.zip/download adempiere-client] - trial release of client app to test on your ADempiere instance.
+
**[http://sourceforge.net/projects/adempiere/files/OSGI/adempiere-server.zip/download adempiere-server] - trial release of server app to test on your ADempiere instance.
+
 
+
=Links=
+
*[http://sourceforge.net/projects/adempiere/forums/forum/611167/topic/3828635 SourceForge Discussion Thread] for making comments or requests.
+
*[[User:Red1|Redhuan D. Oon]] - Wiki Documenter / Tester
+
*[[User:Hengsin|Low Heng Sin]] -  AD OSGI present architect
+
*[[User:Viola|Joerg Viola]] -  AD OSGI pioneer architect
+
*[http://kenai.com/projects/hengsin/pages/Home Kenai repository] of OSGI HengSin.
+
*[[OSGI Hengsin/Beta]] Testing in progress
+
*[[OSGI HengSin/Issues]] in progress
+
*[[OSGI HengSin/2Pack/Debugging]] in progress
+
 
+
=How Do You Score?=
+
Tell me what marks you like to give onto Hengsin's OSGI work, and my documenting work here. I do not expect an A+ but who knows. :)
+
* (sign here with marks for (HS OSGI project), marks for (RED1 Documentation))
+
==Volunteers?==
+
*If you wish to assist please sign in below:
+
**(sign) / (type of assistance)
+

Latest revision as of 18:14, 31 March 2007

Name This user real name is : Stuart Gathman
Sourceforge logo.png This user has a Sourceforge account.
StuartGathman.jpg This user works for Bms logo.gif.



SDGathman is Stuart Gathman, from Fairfax, VA, USA.

Bms logo.gif

You may email him at bmsi.com


StuartGathman.jpg
Retrieved from "http://www.adempiere.com/index.php5?title=OSGI_HengSin&oldid=41021"