JDBCR4 and V7R1M0
Last Post 21 Feb 2013 06:13 AM by Jim Suiter. 7 Replies.
AddThis - Bookmarking and Sharing Button Printer Friendly
  •  
  •  
  •  
  •  
  •  
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages
Jim Suiter
Veteran Member
Veteran Member
Posts:1552
Avatar

--
18 Feb 2013 12:54 PM

We are testing V7R1M0.  One program invokes Scott Klement's JDBCR4 service program.  When I run it under V7, I get the following message on the screen (it goes away after a few seconds):

The java.version property was detected as input. This property is used as output only and has no effect on JVM initialization.

Running in debug, it seems to be triggered by this line:

prop = JDBC_Properties();

In case it is relevant, we do this just be for the JDBC_Properties call:

monitor;                                                      
  CommandTxt = 'ADDENVVAR ENVVAR(QIBM_RPG_JAVA_PROPERTIES) ' +
             'VALUE(''-Djava.version=1.6;'')';                
  CommandLen = %len(%trim(CommandTxt));                       
  RunCommand(CommandTxt: CommandLen);                         
on-error;                                                     
endmon;                                                       

What do I need to change to prevent the message regarding java.version property?
 

Emmanuel
Veteran Member
Veteran Member
Posts:776
Avatar

--
18 Feb 2013 03:09 PM

IBM says:

"Cause . . . . . : java.version was specified as an input property to the

startup of the Java Virtual Machine (JVM). The Classic JVM supported
java.version as an input property for controlling selection of which Java
Developer Kit (JDK) to use. The IBM Technology for Java JVM only uses
java.version as an output property. Selection of a specific IBM Technology for Java JVM/JDK combination is supported through setting the JAVA_HOME

environment variable."

Cheers,

Emmanuel

Scott Klement
Editorial Staff Member
Editorial Staff Member
Posts:16272
Avatar

--
18 Feb 2013 04:41 PM

It's caused by the java.version=1.6 in your ADDENVVAR command.  You can only control the JVM version that way in old JVM's.   (Technically, IBM shouldn't have ever allowed setting up the JVM this way, as it's not the proper way in Java on other platforms...)

With newer JVMs, IBM is using the JAVA_HOME environment variable to control which JVM is used.  (Which is the same as other platforms.)

For 32-bit:

 ADDENVVAR ENVVAR(JAVA_HOME) VALUE('/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit')

 

For 64-bit:

ADDENVVAR ENVVAR(JAVA_HOME) VALUE('/QOpenSys/QIBM/ProdData/JavaVM/jdk60/64bit')

 

Source:

http://publib.boulder.ibm.com/infoc...ultjdk.htm

Jim Suiter
Veteran Member
Veteran Member
Posts:1552
Avatar

--
19 Feb 2013 07:56 AM

This path does not exist:

QOpenSys/QIBM/ProdData/JavaVM

Jim Suiter
Veteran Member
Veteran Member
Posts:1552
Avatar

--
19 Feb 2013 08:11 AM

This path QOpenSys/QIBM/ProdData/Java400 contains folders jdk118, jdk12, jdk13, but not jdk60.

I'm wondering if our new partition where we are testing V7R1M0 even has java 6.0 installed.  I will see if I can figure it out, but will welcome any guidance.  I'm not an AS400 admin.

*********************

As it turns out the path does it exist, but it's not visible in Windows Explorer (it's visible in Ops Nav).

Rocky Marquiss
Senior Member
Senior Member
Posts:2905

--
19 Feb 2013 12:55 PM

"I'm wondering if our new partition where we are testing V7R1M0 even has java 6.0 installed.  I will see if I can figure it out, but will welcome any guidance.  I'm not an AS400 admin."

 

From a command line:

GO LICPGM
10 (Display installed licensed programs)

It will give a list of products installed - 5761JV1 are the Java programs. If you press F11 a couple of times you will see Product Option - in our case we have *BASE, 8,9,11,12 & 13. *BASE is the Jave JDK, 8 is J2SE 5.0 32 bit, 9 64 bit, 11 Java SE 6 32 bit, 12 64 bit,13 J2SE 1.4 64 bit.

 If what you're looking for isn't there - you will need to get the V7R1 DVD's and take option 11 to install what you need... then you will want to re-apply PTF's.

Scott Klement
Editorial Staff Member
Editorial Staff Member
Posts:16272
Avatar

--
20 Feb 2013 04:36 PM

The pathname should begin with a slash,  It should be /QOpenSys/QIBM/ProdData/Java400.

The only reason you'd leave off the leading slash is if you wanted to use a path that's relative you your current directory -- which I seriously doubt is what you want in this case.

The JVM versions you cite (1.1.8, 1.2, 1.3) are extremely old, and have been unsupported for many years.  Strange that you don't have any current ones?

Jim Suiter
Veteran Member
Veteran Member
Posts:1552
Avatar

--
21 Feb 2013 06:13 AM
I edited a previous post saying I found the path via Ops Nav.  I am good to go.  thanks, all.
You are not authorized to post a reply.

Acceptable Use Policy