Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenLiberty Missing tWAS Class "com.ibm.xml.xapi" #6568

Closed
alexclang opened this issue Apr 4, 2023 · 6 comments
Closed

OpenLiberty Missing tWAS Class "com.ibm.xml.xapi" #6568

alexclang opened this issue Apr 4, 2023 · 6 comments

Comments

@alexclang
Copy link

OpenLiberty is missing the WebSphere ND class "com.ibm.xml.xapi" which our tWAS servlet makes use of. However, there is no guidance in the documentation on what or how to replace that class when moving our servlet to OpenLiberty.

Would appreciate guidance on what to do here as well as possibly adding that guidance to the documentation.

@dmuelle
Copy link
Member

dmuelle commented Apr 5, 2023

Hi @alexclang, sorry you're having migration issues. This is outside the scope of what we cover in the Open Liberty docs but I checked with our development team and got the following response:

Did you run the Migration Toolkit for Application Binaries? It should have flagged the package.

@alexclang
Copy link
Author

Yea, we ran the Migration Toolkit. It never even got to that point because of the complexity of our servlet. However, if you could give a high level recommended approach on what to use instead of the WAS com.ibm.xml.xapi" class/methods, it would be much appreciated!

@dmuelle
Copy link
Member

dmuelle commented Apr 10, 2023

Hi @alexclang - just head back from development. Their recommendation is to open a support case

If they could open a support case and provide more information on what they are using or send a binary scanner analysis report in the json format, we could tell more.

Closing this issue sInce this information would not be documented in Open Liberty (but rather in WebSphere or Migration Toolkit, depending on the details). Sorry I couldn't be of more help.

@dmuelle dmuelle closed this as completed Apr 10, 2023
@alexclang
Copy link
Author

Thought I would at least document our usage here. Understand your comment about opening a support case with IBM, but that doesn't really make sense as we were trying to move from WAS-ND to OpenLiberty. Not sure why I would open a case with IBM.

We have 3 imports in this one class:
import com.ibm.xml.xapi.XFactory;
import com.ibm.xml.xapi.XSourceResolver;
import com.ibm.xml.xapi.XStaticContext;

private final XFactory xFactory;
private final XStaticContext xStaticContext;

    protected AbstractTxeTransformerFactory(final XFactory aFactory) {
            xFactory = aFactory;
            xStaticContext = xFactory.newStaticContext();
            xSourceResolver = xStaticContext.getSourceResolver();
            xStaticContext.setMessageHandler(TxeDefaultMessageHandler.SINGLETON);
            xStaticContext.setSourceResolver(this);

    }

Our servlet impliments classes in the WAS class:

public class AbstractTxeTransformerFactory extends TransformerFactory implements XSourceResolver {

Other usage is similar to the above.

@alexclang
Copy link
Author

So, as you can see, we've subclassed the IBM class to get behavior we want. So, the references in our classes are indirect references to the IBM class.

@NottyCode
Copy link
Member

@alexclang The reason for suggesting opening a case with IBM is because in Open Liberty we only document things that are a part of Open Liberty. The classes in question are not so your question ultimately comes down to a question about being able to use an IBM API on an open source project (a question for IBM) or a request for IBM to contribute those classes to Open Liberty (also a question for IBM). In either case the questions would be more appropriately addressed through the IBM supported channels for WebSphere rather than here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants