Operating System - OpenVMS

Java5, Axis2, OpenVMS Oh My!

Shasta Willson
Occasional Contributor

Java5, Axis2, OpenVMS Oh My!

I am trying to get a web service client deployed on OpenVMS with Java5, Axis2 and Tomcat recently installed. It looks like some folks here were doing similar things several years ago, so I thought I'd see if they're still around...

I make no pretense of being a VMS pro after working on it for two years. Right now I'm stuck on a fairly simple task -- adding all the libraries to java$classpath. I can add about half before I get the DCL-W-MAXPARM error.

I'm hoping someone can point me towards tutorials, or is willing to patiently answer stupid questions while I build up to interesting ones.

Thank you,
Shasta Willson
Rick Retterer
Respected Contributor

Re: Java5, Axis2, OpenVMS Oh My!

I believe there may be a 255 character limit to logical names in OpenVMS. So you may have to try some logical name trickery to get to your end result.

Here is a little information about Logical names in Java that you may or may not already know about:

The JAVA$CLASSPATH logical is an alternative way of specifying the class path. Defining this logical overrides the CLASSPATH logical, if set.

JAVA$CLASSPATH lets you define a class path using OpenVMS file specification syntax.

Therein lies its advantage: with JAVA$CLASSPATH, you specify multiple paths with a comma-separated expression; with CLASSPATH, you use a single, quoted string comprised of colon-separated pathnames.

JAVA$CLASSPATH, therefore, avoids the OpenVMS 255-character length restriction that you can encounter with CLASSPATH.

The following two sample statements accomplish the same result:



Note that:

CLASSPATH is a colon-separated list enclosed in quotes.

JAVA$CLASSPATH is a comma-separated list not enclosed in quotes.


The -classpath option on a Java tool overrides both JAVA$CLASSPATH and CLASSPATH.

Also see the attached document, the document is a little dated, but the information in it is still valid.

Also take a look at the "java$150_setup.com" file and see how engineering puts together its java$classpath logicals. There is some interesting DCL magic in there if you look close enough.

I'll see what else I can come up with for you.

Rick Retterer

- Rick Retterer

Honored Contributor

Re: Java5, Axis2, OpenVMS Oh My!

Please consider including the OpenVMS Alpha or OpenVMS I64 version, and the failing DCL command.

My guess is that this is a DEFINE command, and the command syntax is wrong; probably missing commas between the entries in the search list. Something akin to:

DEFINE JAVA$CLASSPATH this,that,here,there,everywhere

Where "this" and "that" and such are device and directory specifications.

There are some examples of defining the classpath logical name in the following document:


Search for the "Setting JAVA$CLASSPATH" section, and have a read.

For more general information on using DCL and DCL command syntax on OpenVMS, there's the OpenVMS User's Guide, if you've not had the opportunity to read through that document. That is available in the OpenVMS manual set, here:


As for the error, there are some details in the on-line help library, that's available via HELP /MESSAGE MAXPARM at the DCL command.

If I've guessed incorrectly on the command and the error and the construction, please post up the command that's triggering the error and the OpenVMS version.

Stephen Hoffman
HoffmanLabs LLC
Shasta Willson
Occasional Contributor

Re: Java5, Axis2, OpenVMS Oh My!

I hope I'm responding correctly this time -- I thought I'd answered the first reply earlier but don't see that now...

The problem turned out to be a line I'd missed while formatting the .jar names. That is, it wasn't that I had too many AXJR:[lib]foo.jar,- lines, it was that one of them was malformed: AXJR:[lib]foo.jar;1 bar.jar,-

Since the names are longer than that, I'd scanned it dozens of times without seeing the problem, until I finally isolated WHICH line was breaking. Until then, the error message looked like it was an issue with the number of jars I was adding.

So, I got through that one, and got some good suggestions for ways to explore too.

Now I'm trying to figure out how/whether wsdl2java works on the VMS port of Axis2, and if so, how to set it up. I can't use the .bat or .sh files designed to set it up, so it's up to me to translate that appropriately.

If anyone knows wsdl2java works, that would be reassuring. If anyone has a tutorial, so much the better!

And, thank you both. I appreciate the pointers. I still do naive things on VMS fairly regularly.

- Shasta
Honored Contributor

Re: Java5, Axis2, OpenVMS Oh My!

Reposting; ITRC glitched. Again.

>If anyone knows wsdl2java works, that would be reassuring. If anyone has a tutorial, so much the better!

I don't know if there's a specific tutorial around, but there's some OpenVMS discussions involving WSDL here:


There are also gSOAP pieces (including the wsdl2h WSDL schema parser) available at:


Various of the newer pieces are available on both OpenVMS I64 and OpenVMS Alpha, though there were one or two pieces that were only available on OpenVMS I64.


> So, I got through that one, and got some good suggestions for ways to explore too.

The local jargon for these sorts of apparently-disjoint sequences working toward a goal is "yak shaving". You're certainly working on a straight line toward your goal, but that's not as obvious from outside. Hence "yak shaving".

If you're looking for (other) suggestions, I'd suggest splitting up your questions into separate topics here and picking titles that are related to the particular part of your (larger) question.
Ian Miller.
Honored Contributor

Re: Java5, Axis2, OpenVMS Oh My!

I know nothing about YAKs but the corrected URL is
Purely Personal Opinion