XPages Runtime version reports WCT instead of DSI - eclipse

We have an existing Domino 8.5.3 FP4 server that is being used for XPages application for the first time. The latest Extension Library from OpenNTF has been installed, but the issue we're having appears to be with the standard XPages runtime.
A simple XPage is displaying:
Error 500
HTTP Web Server: Command Not Handled Exception
and in the xpages_exc_XXX.log:
Caused by: org.osgi.framework.BundleException: The bundle could not be resolved. Reason: Missing Constraint: Import-Package: org.eclipse.equinox.http.servlet
It appears to be due to WCT being reported as the version:
tell http osgi show version
XSP Runtime Version: [WCT8.5.3_FP4] 20130326.1400
What would cause WCT to be reported rather than DSI? I read it should always be DSI for Domino XPages.
tell http osgi diag org.eclipse.equinox.http.registry
Cannot find bundle org.eclipse.equinox.http.servlet.
The following files in D:\Lotus\Domino\osgi\rcp\eclipse\plugins appear to be have been updated after Domino was installed:
com.ibm.eclipse.equinox.http.registry.nl_6.2.3.20110815-1128.jar
org.eclipse.equinox.http.registry_1.0.100.v20080427-0830.jar
org.eclipse.equinox.http.servlet_1.0.100.v20080427-0830.jar
Thanks
Update 04 February 2014 09:45
I've performed the following:
tell http osgi diag org.eclipse.equinox.http.servlet
Cannot find bundle org.eclipse.equinox.http.servlet.
This does NOT list the following (which are displayed on a working server) - although bundles 0-7 and 10-152 are listed:
tell http osgi ss
8 ACTIVE org.eclipse.equinox.http.registry_1.0.100.v20080427-0830
Fragments=45
9 ACTIVE org.eclipse.equinox.http.servlet_1.0.100.v20080427-0830
Is there any further debugging I can do to determine why the bundles cannot be found?

I don't think the WCT vs. DSI label is the problem. That's just an artifact of how IBM builds fix packs. However, there does appear to be a problem with the set of OSGi plugins installed on your system.
It looks like it can't load equinox.http.registry because it can't find a required plugin -- equinox.http.servlet. Have you tried investigating why the second plugin doesn't load? In other words:
tell http osgi diag org.eclipse.equinox.http.servlet
That might help you chase down the missing constraint.

Related

JEE RESTfull web service tutorial ends with 404

I'm trying to run simple RESTfull service tutorial in Java Enterprise Edition and IntelliJ located here. I use GlassFish server 6.2.3 and OpenJDK 17.0.1. The application is very simple and strictly according to tutorial steps. But every time I start application the result is 404.
Server log is without errors (I can go into admin site on localhost:4848 and see my application loaded under Common tasks/Applications), but there are some errors in GlassFish Log:
Error while trying to load Bean Class com.example.restglassfishhelloworld.HelloApplication : java.lang.NoClassDefFoundError: javax/ws/rs/core/Application.]]
WELD-000119: Not generating any bean definitions from com.example.restglassfishhelloworld.HelloApplication because of underlying class loading error: Type javax.ws.rs.core.Application not found.
I suppose that this could be the reason for not working sites, but unfortunately don't understand it (the Application class exists) and don't know how to fix it. Or maybe there could be some other reason for the issue in Glassfish settings... Could somebody help me?
EDIT: link to project on GitHub
Based on comments from CrazyCoder (thank you) and this answer I was in the end able to run the JetBrains tutorial example with following combinations:
Tomcat 9 + OpenJDK 17 or OpenJDK 11 or JDK 1.8
Glassfish 4 + JDK 1.8
Important note for Windows users and Glassfish scenario - AS_JAVA variable should be added to asenv.bat instead of asenv.conf, it means add i.e. set AS_JAVA=C:\Program Files\Java\jdk1.8.0_321 (depends on your JDK installation path) to <glassfish root>\glassfish\config\asenv.bat
See this article.

Upgrading hybris from 6.4 to 6.7

I am upgrading our b2b website to 6.7 hybris version. We have copied the config and custom folders to new 6.7 setup. We have also copied the data and media. Updated the system.
After server startup the entire WCMS section is not rendering due to which the components on home page do not open. It gives me the below error on console
**WARN [hybrisHTTP37] [DefaultCMSComponentRendererRegistry] Error processing component tag. currentComponent [TKNavigationBarComponentModel (8796148630588#1)] exception: Missing extension info for given extension name
Dec 30, 2019 11:12:31 AM org.apache.catalina.core.ApplicationDispatcher invoke
SEVERE: Servlet.service() for servlet [DispatcherServlet] threw exception
java.lang.NullPointerException: Missing extension info for given extension name
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:805)
at com.thyssenkrupp.b2b.global.baseshop.storefront.filters.AcceleratorAddOnFilter$DefaultExtensionAccessor.getInfo(AcceleratorAddOnFilter.java:272)
at com.thyssenkrupp.b2b.global.baseshop.storefront.filters.AcceleratorAddOnFilter$DefaultExtensionAccessor.getExtensionDir(AcceleratorAddOnFilter.java:267)
at com.thyssenkrupp.b2b.global.baseshop.storefront.filters.AcceleratorAddOnFilter$ResourceAddOnResolver.getExtensionPath(AcceleratorAddOnFilter.java:113)
at com.thyssenkrupp.b2b.global.baseshop.storefront.filters.AcceleratorAddOnFilter$ExecutableResourceAddOnResolver.getAddOnFullPathName(AcceleratorAddOnFilter.java:160)
at com.thyssenkrupp.b2b.global.baseshop.storefront.filters.AcceleratorAddOnFilter.doFilter(AcceleratorAddOnFilter.java:61)**
The localextensions.xml is same as 6.4 version. We have also tried querying tables to check if CMSNavigationNodes are present in the DB . In backoffice to the WCMS node is missing.
Can you please suggest what could have gone wrong here ?
There are documentation for upgrading. You need a lot of work for every version. For example check 6.6 to 6.7 guide (This link private, you need account on SAP).
I was able to fix this using
https://answers.sap.com/questions/12766398/missing-extension-info-for-given-extension-name.html
I had to manually change the Resolver file in my custom storefront extension as it was a copy of 6.4 and had the bug mentioned in the above link.

Unable deploy mule application in mule stand alone server

During development of mule application in any point studio 6 and run time environment is 3.9 project running fine. But while deployment on mule stand alone server getting following error:
org.mule.module.launcher.DeploymentInitException: SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element 'dw:transform-message'. One of '{"http://www.mulesoft.org/schema/mule/core":abstract-message-processor, "http://www.mulesoft.org/schema/mule/core":abstract-outbound-endpoint, "http://www.mulesoft.org/schema/mule/core":abstract-mixed-content-message-processor, "http://www.mulesoft.org/schema/mule/core":response, "http://www.mulesoft .
The error seems in your dwl file, would you please take a look of dwl once, and if possible share the same dwl and payload before the transformer component.

Jboss AS 7 and class loading

I am using JBOSS AS 7.0.2 Final, and was trying to upgrade the version of RESTEASY that comes with 7.0.2 RESTEASY 2.2.1.GA to a newer version such as 2.3.4.Final. I followed the directions as indicated in patching provided by JBOSS, and when I did that, at application server startup it throws the error of being unable to parse the module.xml file.
I attempted the same procedure on 7.1.1 Final and it works fine.
First Question is, anyone know how to update RESTEASY in 7.0.2 (My other servers are all using this so I really like not to have to reset my other servers and replace with newer version of JBOSS)
I was hoping to upgrade RESTEASY, with hopes that this error may have been resolved in newer version
I have also tried by adjusting my POM to use version 2.3.4.Final and tried every scope, but it always would fail to use the newer jars and stick with JBOSS supplied jar.
15:14:09,947 SEVERE [org.jboss.resteasy.core.SynchronousDispatcher] (http--127.0.0.1-8443-6) Failed executing POST /countermeasure/customQueryLite: org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find MessageBodyWriter for response object of type: java.util.ArrayList of media type
: application/xml
at org.jboss.resteasy.core.ServerResponse.writeTo(ServerResponse.java:216) [resteasy-jaxrs-2.2.1.GA.jar:]
It works fine for json, and text, and singular xml objects, but not list objects for xml.
Any answers in regards to these issues with resteasy and jboss would be helpful.

Eclipse RCP, RMI and Bundles

I'm trying to combine Eclipse RCP with RMI. For that purpose I created six bundles:
(In parenthesis are dependencies)
Core: Interfaces for client and server
Server(Core): Server implementation and Registry start class
ServerApp(Server): GUI client which basically just instantiates the registry starter (and starts it on Activation)
Client(Core): Client implementation
ClientApp(Client): GUI client
Now I started the serverapp, but I got a
Caused by: java.lang.ClassNotFoundException: core.rmi.CallbackServerInterface (no security manager: RMI class loader disabled)
Now I started the server with
-consoleLog -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:${workspace_loc}/core/
(My java.policy file is in the core plugin).
I thought the problem was the classpath. So I made core and server buddies:
Eclipse-BuddyPolicy: registered
in the core bundle manifest file and
Eclipse-RegisterBuddy: core
In the server bundle manifest file.
Which didn't help, since I got the exact same error.
Does anyone know where I could have gone wrong on this one?
So apparently the problem was, that OSGI uses its own Classloader. So before we do the Naming bind we need:
Thread.currentThread().setContextClassLoader(
this.getClass().getClassLoader());
After this, the server works like a charm, and the client can connect.