OS2 World.Com Forum

Subject  :  IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  28 Oct, 2006 on 19:25
Not giving up on exploiting the few OS/2 resources available for
enterprise class applications, I was finally successful (mostly)
in executing a modern J2EE compliant application server in the
OS/2 Merlin environment (fixpack 15).

In the open source, it is called the Apache Geronimo whereas IBM,
the donor of the server code, refers to it as WebSphere
Application Server Community Edition (WASCE). It has a built in
database known as the Apache Derby whereas IBM calls it
CloudScape.

If interested anyone, scroll somewhat below to the download link
of:
http://publib.boulder.ibm.com/wasce/V1.1.0/en/Tasks/QuickStart.html

Downloaded the WinXX version that can be extracted and installed
using the latest Odin implementation (I used only OS/2 tools for
the task). The user has to explicitly tell the installer where
the Java executable is located:
http://www.chingonazo.com/odinWinIBMWASCE.JPG

...after pressing the OK button, my Golden Code Java location is
specified:
http://www.chingonazo.com/odinWinIBMWASCElocateJava.JPG

It is important to make a directory beforehand where the planned
installation will be done, otherwise nothing will be installed by
the WinXX installation utility. The suggested path is
X:\IBM/WebSphere\AppServerCommunityEdition where you replace X by your actual drive letter.

Also, note that even if the installation utility says that 0
amount of data will be installed( as an example: http://www.chingonazo.com/odinWinIBMWASCEinst0data.JPG ), you can disregard the dialogue
if you have created the directory where the installation will be
done.

There will be a warning stating that the platform is not
supported (simply press next):
http://www.chingonazo.com/odinWinIBMWASCEinstallWarn.JPG

Notwithstanding, although the open source equivalent version
Geronimo 1.1 (the same as IBM's) does not even start under OS/2
and my native Java version 1.4.1_7, IBM's WASCE 1.1 does
(specifying as test http://localhost:8080):
http://www.chingonazo.com/odinWinIBMWASCEconsole8080.JPG

Selecting the link Administrative Console will allow you to log
in your server to manage its resources. However, oddly enough,
you will not be able to log until you make changes to the file:
X:\IBM\WebSphere\AppServerCommunityEdition\var\security\users.properties

Make a back up of it and edit the base file users.properties by
removing all the gibberish content and simply writing:
system=manager

In other words, the initial user will be: system
and the initial password will be: manager

Those can be changed after the initial log-in:
http://www.chingonazo.com/odinWinIBMWASCEsuccessConsole.JPG

Browsing around the parameters, resources, and information that
can be accessed from within the management console and selecting
the application server JVM info:
http://www.chingonazo.com/odinWinIBMWASCEserverjvm.JPG

Apparently, the only major error that surfaces is the Simple
Encryption error, as seen "under the hood" executing in the
backend of the OS/2 window from where WASCE was started:
http://www.chingonazo.com/odinWinIBMWASCEports.JPG

Notwithstanding, even starting WASCE from the secure port will
succeed:
http://www.chingonazo.com/odinWinIBMWASCEssl8443.JPG

This is the sort of modern application support that might revive
OS/2 in small to medium sized enterprises that are looking for an
intuitive interface at a Linux support price (hence of my insistence on having OS/2 open sourced --one way or another).

The nature of these kind of applications simply shows that Golden
Code Development (GCD) native port of Java is the right approach
and not WinXX hacks of Java. But will Golden Code Development
release a Java 5???

If the company does, I will be a repeat customer (the subscription price is quite reasonable); on the other hand, a rough sketch of how GCD develops the OS/2 Java port (tools, procedure, bug tracking, etc.) would be a welcome resource to guide some of us who are barely rediscovering the 1995 "OS/2 Warp Programming for Dummies."

Appropos, the Linux equivalent distribution of the above WinXX version of WASCE also does work well under OS/2, but one has to set it up under Linux first and then copy the directory structure to an OS/2 HPFS file system. I did not try installing on my (free)JFS file system.

Any comments and/or suggestions (perhaps of other J2EE apps that work under OS/2) are welcomed.


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  29 Oct, 2006 on 18:06
Rather than modifying my previous post, I will state here what the problem that, in my ignorance, I referred to "Simple Encryption" error that the backend was spitting out.

It is about Advanced Encryption Standard (AES http://www.javaworld.com/javaworld/jw-04-2000/jw-0428-aes.html )
and the lack of suitable support in the Golden Code Implementation of Java 1.4.1_7; apparently other operating systems already have that support in their respective ports of Java (1.4.2 and above).

Based in a hint from the discussion at: http://forum.java.sun.com/thread.jspa?threadID=603209&messageID=3248903
I headed to the following site that provides some prebuilt *.jar files which contain implementations of the encryption algorithms lacking in GCD:
http://www.bouncycastle.org/specifications.html

Since the site makes available (for private use free but if the intention is commercial, royalties should be paid) the encryption files for older versions of Java, I selected the jce-jdk13-134.jar which I subsequently placed in my GCD Java directory: X:/java141/jre/lib/ext
(where you replace the X for the actual drive letter).

Proceeded by editing the file: java.security in the directory f:/java141/jre/lib/security by adding the following line (as explained at the site and elsewhere):
security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider
and saved changes.

And that makes the Golden Code Java support the level of encryption required by the IBM WebSphere Community Edition!
( http://www.chingonazo.com/advEncryptStandardGCD.JPG )

However, note that the ONLY error is about my Java implementation not being done by Sun or IBM but that is beyond anything Golden Code Development can do.

Note that by doing this procedure, there is NO NEED to change the file that I mentioned in my first post to log into the Administrative Console:
X:\IBM\WebSphere\AppServerCommunityEdition\var\security\users.properties

The reason is that the gibberish initially in that file is actually the encrypted word: manager

One more thing, expecting that some among the 1000+ OS2World users will try out the application server, in order to make it run all that is needed (besides the JAVA_HOME or GCD_JAVA_HOME environment) is to change directory to X:\IBM\WebSphere\AppServerCommunityEdition
(where you replace X with your drive letter) and type:

java -jar bin\server.jar

There is no need to use the *.bat files specific to the WinXX distribution.

Hope the information about AES will be useful to others executing modern Java applications (or applets???).


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  brittonx brittonx@gmail.com
Date  :  30 Oct, 2006 on 05:34
FWIW....

I just downloaded the (Windows) Geronimo 1.1.1 with Tomcat (zip) from:
http://geronimo.apache.org/downloads.html

and the Innotek 1.4.2_09 JDK from: http://download.innotek.de/javaos2/142_09/install_sdk.exe
NOTE: I believe the JDK is needed for Geronimo, not the JRE.

I ran the Innotek 1.4.2_09 JDK install and had it install to D:\Java142

I unzipped the contents of the Geronimo ZIP to D:\

I renamed the Geronimo-1.1.1 directory to just D:\geronimo

I added the following to CONFIG.SYS
SET JAVA_HOME=D:\Java142

I rebooted

I opened a command prompt and went into D:\geronimo\bin

I typed the following:
D:\Java142\bin\java.exe -jar server.jar

Geronimo came up without errors and I was able to log into the admin console from another pc.

NOTE: I did not have to alter ANY configuration files. This is running without needing ODIN etc...
I suspect this should work with the IBM WASCE too. I was going to try but the IBM Downloads were offline.

--Britton


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  30 Oct, 2006 on 13:15

brittonx (30 Oct, 2006 05:39):
FWIW....

I just downloaded the (Windows) Geronimo 1.1.1 with Tomcat (zip) from:
http://geronimo.apache.org/downloads.html

and the Innotek 1.4.2_09 JDK from: http://download.innotek.de/javaos2/142_09/install_sdk.exe
NOTE: I believe the JDK is needed for Geronimo, not the JRE.


The JDK usually contains the JRE also bundled. Additionally, executing the WASCE server.jar file makes use of the directories under the JRE (try moving some of the files under that directory somewhere else while Geronimo's server.jar is in action, to confirm it).


brittonx (30 Oct, 2006 05:39):I ran the Innotek 1.4.2_09 JDK install and had it install to D:\Java142
Geronimo came up without errors and I was able to log into the admin console from another pc.

Open your file: D:/geronimo/var/security/users.properties
in your favorite text editor. All you will find is a clear text combination:
system=manager

On the other hand, when you open the same file from the IBM WASCE, you will find: system={someWord}<plusLongStringOfCharacters>
i.e., the kind of AES that I spoke about in my second post. Download the WASCE to confirm --I never had problems downloading on weekends from IBM, by the way.

Despite the information that I found in the web not being consistent about the inclusion of AES from Sun or third party providers into their specific implementation ports, there is also some ambiguity about the inclussion of such in either Java 1.4 or in some cases until 1.4.2.

Your version of Java --being a hack from the WinXX side including all the extra baggage specific to WinXX.-- may be able to decrypt the WASCE with AES. Notwithstanding, Geronimo 1.1 is not encrypted likewise.

One side effect that I learned, is that even if some cracker tampers with the file under discussion (as I had suggested in my very first post) the next time that WASCE is started it will refuse to start complaining about tampering with security. To find the details look into the file:
X:/ibm/WebSphere/AppServerCommunityEdition/var/log/server.log


brittonx (30 Oct, 2006 05:39)::NOTE: I did not have to alter ANY configuration files.

As explained above, judging from the file under consideration:
m:/geronimo-1.1/var/security/users.properties
you do not have security against crackers in Geronimo. Good! That is the essence of the open source business model notion: an individual and/or company may use what the community develops, add specific modules (like IBM added the encryption) AND return in kind to the community from which it took.

The concept of returning in kind is what escapes the narrow perspective of organizations practicing the old and proprietary business model in a global environment.


brittonx (30 Oct, 2006 05:39): This is running without needing ODIN etc...

Actually, if you are using the Innotek hack you are using Odin all the time interfacing to the WinXX java port.
In my case however, I ONLY used Odin to extract WASCE from the WinXX specific bundling utility --that's it! Golden Code Development is a native Java port with no WinXX specific baggage and/or bugs.

The only problem is that it is a little behind and there the reason that I found the need to retrofit the AES capability (needed for IBM's WASCE) in the directories:

f:/java141/jre/lib/ext
f:/java141/jre/lib/security

as explained in my previous and second post.


brittonx (30 Oct, 2006 05:39): I suspect this should work with the IBM WASCE too. I was going to try but the IBM Downloads were offline.

Now that you have your app server running, will you be learning/developing/hosting or even recommending some enterprise class Java apps on OS/2 (and at the same time pushing OS/2 a little forward) If you will, please consider the GCD OS/2 native Java for stability reasons --only my suggestion, of course!

Good luck!

P.S. I am also searching for the Apache module to interface to the WASCE built in Tomcat server, mod_jk for OS/2. I would appreciate information on where I can find it...

El Vato.


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  lpino
Date  :  30 Oct, 2006 on 22:07
Why don't you write an article about this subject and sent it to Voice?. They really need articles and we (the os/2 users) need tools like WebSphere.

Leonardo Pino


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  brittonx brittonx@gmail.com
Date  :  31 Oct, 2006 on 05:08
El Vato,

I downloaded the IBM WASCE 1.1 windows version. I installed it on a windows box. I then ZIPped up the installed files. I unzipped the files on the OS/2 box into a directory C:\WASCE

From a command prompt i went into C:\WASCE\BIN and typed C:\Java142\bin\java.exe -jar server.jar

Everything comes up and seems to be working. No Errors.
Again, this is using the Innotek 1.4.2_09 JDK.
You can call it a hack or whatever you want but it works, and works well. I'd love to support something like the GC JRE but they need to come out with something more current than 1.4.1.
"Native OS/2" does me no good if it is too out of date.

I do appreciate your post. It got me to try both Geronimo and IBM WASCE.


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  31 Oct, 2006 on 20:39

brittonx (31 Oct, 2006 05:0

I downloaded the IBM WASCE 1.1 windows version. I installed it on a windows box. I then ZIPped up the installed files. I unzipped the files on the OS/2 box into a directory C:\WASCE


Of course, that is more straight forward --as the Linux WASCE version can also be used for the purpose. Notwithstanding, the point that I wanted to convey is that installation of WASCE using only tools available for an OS/2er is possible (with a little tweaking).


Everything comes up and seems to be working. No Errors.

Cool! Now here is my take on my single error that the WASCE routine spits out on the backend. Innotek is using the Sun and/or IBM WinXX Java port in its hack --hence, it registers (and passes) the WASCE checking routine (fooling it).

The Golden Code Implementation, being native to OS/2, appears foreign to the WASCE routine. The same error might be expected to be spit out from an open source Java effort implementation like GCJ because it is from neither of the mentioned companies above. Hence, the error on my side is actually spurious and simply implies that GCD's OS/2 Java implementation has not been tested with WASCE.

Note, however, that the simple fact of Innotek's hack being recognized by the WASCE routine does not translate into better performance and stability --the testing was done under WinXX-- and now you are running it with an extra layer of abstraction with Odin embedded.


Again, this is using the Innotek 1.4.2_09 JDK.
You can call it a hack or whatever you want but it works, and works well.

It is not what I want to call it; it is what it is: another abstraction layer separating further the JVM from the OS --in other words, a quick fix.

The fix would be good if all you were to run were frivolous applications,
http://www.chingonazo.com/odinAndVPC2.JPG
(see the pretty girl on the left executing with Odin's PE.exe utility). Or if you were to run another OS for light duty use and/or exhibition purposes (see the VPC/2 with Red Hat/Oracle Linux installation screen).


I'd love to support something like the GC JRE but they need to come out with something more current than 1.4.1.
"Native OS/2" does me no good if it is too out of date.

Geronimo, as well the IBM WASCE, are designed for heavy duty J2EE enterprise class application deployments. The closer they execute in relation to the operating system, the better for performance and stability prospects.

And there the reason of my insistence on the stability of a native Java JVM over that of the hack from WinXX. In other words (and my take again), I am willing to support an organization like GCD that shows that they are in for the long run by providing native OS/2 implementations; rather than short termed, quick fixes that will simply reveal the lack of belief in OS/2's continued potential for existence beyond IBM.


I do appreciate your post. It got me to try both Geronimo and IBM WASCE.

Take a look into the J2EE specification if you will be a developer and or administrator of this kind of applications. I think you will agree with me: the slight inconvenience of retrofitting the GCD native Java implementation (as explained in my second post) more than makes up for its trailing behind that of Innotek's hack .

El Vato.


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  31 Oct, 2006 on 21:29

lpino (30 Oct, 2006 22:07):
Why don't you write an article about this subject and sent it to Voice?. They really need articles and we (the os/2 users) need tools like WebSphere.

Leonardo Pino


I have an alternate (and equally valid suggestion , I think --just try it out. That is the way to learn; experimenting sometimes beats rhetoric in conservative e-magazines.

Besides, if the OS/2 future is on our shoulders, we have to get our hands dirty (with very little documentation).

Just remember that if you will be retrofitting your Golden Code Java 1.4.1_7 with AES (as explained in my second post) you have the option of downloading either jce-jdk13-134.jar or bcprov-jdk14-134.jar from the site of Bouncy Castle: http://www.bouncycastle.org/latest_releases.html

then proceed to place either file into your GCD Java location (replace the X by your drive letter):

X:/java141/jre/lib/ext

follow that by modifying your file:

X:/java141/jre/lib/security/java.security

adding the (in my case 6th) parameter at the end of the ALREADY existing parameters.

For example, if you open your file in a text editor you will initially see a section with the following lines (after you page-down somewhat);

security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.net.ssl.internal.ssl.Provider
security.provider.3=com.sun.rsajca.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider

One last paramenter (6th in my case) is needed to support the AES needed by IBM's WASCE. Once you add it, your section of the file should now look like this:

security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.net.ssl.internal.ssl.Provider
security.provider.3=com.sun.rsajca.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider
security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider


Cheers !


Subject  :  Re :IBM J2EE Community Edition application server on OS/2 (SMP)
Author  :  El Vato
Date  :  04 Dec, 2006 on 00:08
The following is provided as a "case study" that may be helpful for someone out there.

Having recently installed WASCE under WsEB in an oldie dual-cpu machine, I was confused about the reason that the application server would refuse to proceed after an initial launch period.

I double checked my own instructions that worked so well for a single cpu machine with Merlin client OS/2 but my Golden Code Development native Java implementation would simply spit out errors.

I tried the Innotek Java hack --searching for a possible angle that revealed where the problem was. Needless to say, like the Odin applications executing in my SMP machine, the Innotek Java hack reveals its WinXX identity by simply becoming a hanging process that I could not kill until I had to reboot.

After examining the logs and an intense examination, edited the following file:

X:/websphere/AppServerCommunityEdition/var/config/config.xml

where ALL the IP expressions of the form: 0.0.0.0 are converted into either the localhost 127.0.0.1 (for testing purposes) and/or the actual IP address of the machine where WASCE is to reside.

The editing has to be done when WASCE is completely out of activity, otherwise the engine will overwrite the editing of the file. A portion of which is shown here for illustrative purposes:

http://www.chingonazo.com/testJspConfigXml.jpg

Although this variation may be due either to the fact that one is a server class machine and the other simply a client; or because of differences in the network configurations of the machines, I was pleased to test a couple of simple JSP files successfully.

WASCE (as well as Geronimo) autodeploy WAR files as soon as they are copied to the directory

X:/websphere/AppServerCommunityEdition/deploy

Another issue to observe, WAR files can not be simply interchanged from one vendor to another --I tried to do it with a Sun simple hello WAR file and it would not be accepted in WASCE's environment.

On the other hand, the sample applications specific to WASCE function properly (whatever happened to adherence to the J2EE spec ); those can also be downloaded from:

http://sourceforge.net/powerbar/websphere/download.php

(the WASCE samples download link is toward the bottom of the page).

After autodeploying by simply placing a test hello WAR application (a little hacked, of course) and pointing one's browser to (the local test machine, for exmaple):

http://localhost:8080/hello

this is what appeard in my SMP machine:

http://www.chingonazo.com/testJSPgif.JPG

and of course, this simply reiterates that the dual machine is actually executing the Golden Code Development SMP certified Java:

http://www.chingonazo.com/testJSP.JPG


Subject  :  Re:IBM J2EE Community Edition application server on OS/2
Author  :  El Vato
Date  :  11 Apr, 2007 on 01:42
This aspect of the Service Oriented Architecture (SOA) approach on the OS/2 platform is made possible by Golden Code Development native OS/2 Java port (read: implicit demand for J2EE level stability).
http://www.webwire.com/ViewPressRel.asp?aId=31090

When Java is run in server mode there is no need for GUI stuff. Consequently, a prospective newer Java effort without the GUI stuff would still allow OS/2 to continue supporting Java enterprise server applications.

Cheers !


Powered by UltraBoard 2000 <www.ub2k.com>