For distributed platforms

Developer Tools known restrictions

Several known restrictions apply when you are working with WebSphere® Application Server Developer Tools for Eclipse.

Unable to interact with the Liberty server after you modify the console log level settings

There is a known limitation when the console log level is set to WARNING, ERROR, or OFF. The workbench has problems when it interacts with the Liberty server, such as cannot start, stop, or publish to the server. For example, the workbench is unable to start the Liberty server and the following timeout error message displays:
This is a screen capture of the server timeout error message: Server WebSphere Application Server V8.5 Liberty at localhost was unable to start within 60 seconds. If the server requires more time, try increasing the timeout in the server editor.

The console log level (consoleLogLevel) is an attribute of the logging configuration element in the server configuration (server.xml) file with the following range options: INFO, AUDIT, WARNING, ERROR, and OFF. AUDIT is the default value for the console log level settings. For more details, search for the consoleLogLevel attribute in the Liberty kernel topic.

To work around this known limitation, specify INFO or use the default AUDIT setting for the console log level:
  1. In the Servers view, expand your Liberty server.
  2. Right-click the Server Configuration[server.xml] node and select Open.
  3. In the Server Configuration editor and under the Configuration Structure section, expand Server Configuration node. The next step depends if the Logging element is available:
    • If the Logging element is available, select it and under the Logging section of the server configuration editor, use the drop-down menu for the Console log level field, and select either the AUDIT or INFO option. Type Ctrl + s to save your changes in the editor.
    • If the Logging element is not available, the workbench is already using the default AUDIT setting. As a result, you might be experiencing a different problem that is causing interaction failures between the workbench and the Liberty server.
    .

Copying and pasting servers might cause the publishing state to become out of synchronization

Try to avoid copying and pasting servers because they point to the same configuration file. Copying and pasting servers might cause the publishing state to become out of synchronization. For example, when you remove an application from one server, the application still appears to be deployed to the other server even though it is not. Server state will not synchronize up again until the next publish operation.

Unable to recognize the start of the server when the hideMessage attribute is used to suppress the message

You can configure the <hideMessage> attribute in the Logging element of Server Configuration [server.xml] to suppress messages. If you configure to hide the server start message, for example <logging hideMessage="CWWKF0011I"/>, then the tool fails to recognize the state of the server when it is started. In such a situation, the state of the server in the Server view remains as starting until timeout and finally displays the following message:

Error message that is displayed when the tool does not recognize that the server is started.

Remote servers cannot run projects that were created with a newer version of Java

If you compile a project with a higher version of Java than your remote server is running, you can receive the following error messages:

Error 404: javax.servlet.UnavailableException: 
SRVE0202E: Servlet [s1]:  s1 was found, but is corrupted: 
SRVE0227E: Check that the class resides  in the proper package directory. 
SRVE0228E: Check that the classname has  been defined in the server using the proper case and fully qualified  package. 
SRVE0229E: Check that the class was transferred to the filesystem using a binary transfer mode. 
SRVE0230E: Check that the class  was compiled using the proper case (as defined in the class  definition). 
SRVE0231E: Check that the class file was not renamed after it was compiled.

If you create a project in a package with a higher version of Java than your remote server is running, you can receive the following error messages:

Error 404: java.io.FileNotFoundException: SRVE0190E: File not found: /s2
Console output: [ERROR   ] SRVE0266E: Error occurred while initializing servlets: java.lang.UnsupportedClassVersionError:  JVMCFRE003 bad major version; class=s1, offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:383)
at com.ibm.ws.classloading.internal.AppClassLoader.definePackageAndClass(AppClassLoader.java:318)
at [internal classes]

To avoid these errors, compile your project with the same version of Java that your remote server is running, or with an earlier version. You can also create your project in a package with the same version of Java that your remote server is running, or with an earlier one. To find the Java version of the remote server, check the messages.log file. For more information about viewing the messages.log file, see Viewing trace and message log files by using developer tools.

Some utilities are unavailable when you use a remote Liberty server or a Liberty server in a Docker container

The tools do not support the following utilities when you use a remote Liberty server:
  • Generate Web Server Plug-in
  • Add Configuration Snippets
The tools do not support the following utilities when you use a Liberty server in a Docker container:
  • Generate Web Server Plug-in
  • Package Server
  • Add Configuration Snippets
Remember: You can access the available utilities by right-clicking your server and selecting Utilities > Utility Name....

Icon that indicates the type of topic Reference topic

File name: r_limitations.html