Kbase P119830: Java proxy generation fails with java.lang.NoClassDefFoundError using the batch ProxyGenerator from
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  8/6/2008 |
|
Status: Verified
SYMPTOM(s):
Java proxy generation fails with java.lang.NoClassDefFoundError using the batch ProxyGenerator
Exception in thread "main" java.lang.NoClassDefFoundError: com/progress/open4gl/proxygen/Batch
When running the graphical Proxy Generator, the following message appears:
Try running c:\OpenEdge\WRK\runbproxygen.bat from the command prompt.
FACT(s) (Environment):
A NetSetup installation has been performed
The proxy generation works fine from the local machine where OpenEdge is fully installed.
Windows
OpenEdge 10.x
CAUSE:
Bug# OE00134480
FIX:
To work around the issue, follow the steps below:
1. Generate the Java proxy from ProxyGen.
The error stating that the generation failed appears. The runbproxygen.bat file is created in the Output directory specified in the ProxyGen.
2. Make a local copy of bproxygen.bat located in %DLC%\bin on the remote machine where OpenEdge is fully installed.
3. Edit the bproxygen.bat file and add the following parameters to the %JVMSTRT% command line before the -DProxyGen.StartDirin parameter:
-classpath %DLC%\java\progress.jar;%DLC%\java\messages.jar;%DLC%\java\ext\xercesImpl.jar;%DLC%\java\ext\xmlParserAPIs.jar;%DLC%\java\ext\soap.jar;%DLC%\java\ext\wsdl4j.jar
The complete command line looks like the following:
"%JVMSTRT%" -o stderr -s -m silent -a "%TOOLSPROP%"::%TOOLSGRP% %JVM% -DInstall.Dir="%DLC%" -DJavacCP="%JDKCP%" -D%PXGARG%=%PROXYFILE% -DProxyGen.LeaveProxyFiles=%KEEPFLAG% -DProxyGen.FromGUI=%GUIFLAG% -DProxyGen.UseLocalDotNET=%USELOCALDOTNET% -classpath %DLC%\java\progress.jar;%DLC%\java\messages.jar;%DLC%\java\ext\xercesImpl.jar;%DLC%\java\ext\xmlParserAPIs.jar;%DLC%\java\ext\soap.jar;%DLC%\java\ext\wsdl4j.jar -DProxyGen.StartDir=%STARTDIR% %PROXYGENPKG%.%BPROXYGENCLASS%
4. Edit the runbproxygen.bat file and point to the local bproxygen.bat file:
For example, instead of:
[mapped drive]\bin\bproxygen.bat <...>
refer to:
[local drive\path]\bproxygen.bat <...>
5. Open ProEnv, go to the directory where runbproxygen.bat is located, and execute it.