Confirmed this is user error. There is no bug in the migration tool.

Steps to demonstrate this:

- Create new, blank Eclipse dynamic web project
- Add provided servlet code
- Add required libraries
- Remove referenced to internal logging code
- Add web.xml with basic mapping to "/test"
- Export WAR file
- Deploy to Tomcat
- Start Tomcat
- Request servlet

Servlet loads and then reports an exception during init. That is fine. It proves that the servlet was loaded which is all we care about at this point.

- Use migration tool to migrate WAR
- Deploy migrated WAR to Tomcat 10.1.x
- Start Tomcat
- Request servlet

Servlet loads and then reports an exception during init. Again, this is fine as it proves that the Servlet has been converted correctly and can be loaded by Tomcat 10.1.x.

Best guess, the Eclipse project isn't configured correctly to compile the web application for Tomcat 10.1.x.

At this point the simplest solution is likely to be:

- take the WAR file that works on Tomcat 9
- drop in webapps-javaee in Tomcat 10 and let Tomcat convert it
  automatically

Mark


On 08/02/2024 20:28, Rick Noel wrote:
No I cannot compile from command line.

But I do not really care how eclipse compiles my class anyway.
All I know is that eclipse compiles the class without errors. Using the jars I 
tell it to. (all the jars run through the migration tool)
But Tomcat 10 can not compile the class using those same migrated jar files.

And my class has no use of javax.server  classes in it.
All the javax.server classes are only in the third part jar files which are 
supposed to have been converted to use  jakarta.server classes

Is this not a bug with Tomcat migration tool?

Again here is my class that does not compile on Tomcat 10...........
It has no reference to  javax.server


package com.radiovoodoo.xmlrpc;

import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

import org.apache.xmlrpc.XmlRpcException;
import org.apache.xmlrpc.XmlRpcRequest;
import 
org.apache.xmlrpc.server.AbstractReflectiveHandlerMapping.AuthenticationHandler;
import org.apache.xmlrpc.server.XmlRpcHandlerMapping;
import org.apache.xmlrpc.server.PropertyHandlerMapping;
import org.apache.xmlrpc.webserver.XmlRpcServlet;

import com.radiovoodoo.util.Log;

/**
  * @(#)RVXmlRpcServlet.java
  *
  * new XmlRpcServlet, which extends the default Apache XmlRpcServlet
  *
  * @author  Hank Zill <hz...@radiovoodoo.com>
  * @version 1.0
  *
  * Copyright(c) 2005 RadioVoodoo, Inc. All Rights Reserved.
  */

public class RVXmlRpcServlet
    extends XmlRpcServlet
{
    /**
     *  this init parameter defines the path to the property file from
     *  which to load the XML RPC handler mappings.
     *
     *  the path is relative to the CLASSPATH
     */
    public static final String RESOURCE_PATH = "property-file-path";

    protected XmlRpcHandlerMapping newXmlRpcHandlerMapping()
       throws XmlRpcException
    {
       PropertyHandlerMapping mapping = null;

       /* String resourcePath = getInitParameter( RESOURCE_PATH );
if ( resourcePath == null )
       {
          throw new XmlRpcException( "No property file defined.  This servlet must have the 
init-param " + RESOURCE_PATH + " set." );
       } */
       String resourcePath = "somefile.properties";

       URL url = null;
          try {
                url = getServletContext().getResource( resourcePath );
          } catch (MalformedURLException e1) {
                throw new XmlRpcException( resourcePath + " " + e1 );
          }

       if (url == null)
       {
          throw new XmlRpcException("Failed to locate resource " + resourcePath 
);
       }
       try
       {
          mapping = newPropertyHandlerMapping(url);
       }
       catch (IOException e)
       {
          throw new XmlRpcException("Failed to load resource " + url + ": " + 
e.getMessage(), e);
       }

       if ( mapping == null )
          Log.debug( "HandlerMapping is null" );
       else
       {
          String[] methods = mapping.getListMethods();

          for ( int x = 0; x < methods.length; x++ )
          {
             Log.debug( "method: " + methods[x] );
          }
       }
mapping.setAuthenticationHandler(new AuthenticationHandler() {
         //rick removed override annotaion so this class will compile on java 
1.5
                //@Override
                public boolean isAuthorized(XmlRpcRequest arg0) throws 
XmlRpcException {
                        return true;
                }
       });

       return mapping;
    }
}





Rick Noel
Systems Programmer | Westwood One
rn...@westwoodone.com

-----Original Message-----
From: Rob Sargent <rsarg...@xmission.com>
Sent: Thursday, February 8, 2024 1:54 PM
To: Tomcat Users List <users@tomcat.apache.org>
Subject: [EXT]Re: [EXT]Re: jakartaee-migration-1.0.7 migration tool failure

[You don't often get email from rsarg...@xmission.com. Learn why this is 
important at https://aka.ms/LearnAboutSenderIdentification ]

On Feb 8, 2024, at 9:04 AM, Rick Noel <rn...@westwoodone.com.invalid> wrote:

I built  my app in Eclipse  and the build path is set to use the migrated jar.
It compiles without error on Eclipse and using the migrated jar.  I
have that same migrated jar in the Tomcat lib But when tomcat 10
compiles it does not compile

I have also used the migration tool on my .war that runs in Tomcat 9 and that 
war still fails with same compile error.

So to summarize......... the migration tool fails to convert third
party jar xmlrpc-server3.1.3.jar And it also fails when I use it on my .war ran 
through the migration tool.


Rick Noel
Systems Programmer | Westwood One
rn...@westwoodone.com


Can you build from the command  line?  Who knows what eclipse does under the 
covers
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

CAUTION: This email originated from outside of the organization. Do not click 
links or open attachments unless you know the sender and you are sure the 
content is safe. Please report the message using the Report Message feature in 
your email client if you believe the email is suspicious.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to