Error with Orbeon Forms - forms

We have an older application based on Orbeon forms 4.4. Out of the blue, we started having a problem where various links and buttons on certain forms are not functioning correctly. The forms impacted seem to be Orbeon's built-in Forms Builder and a few of our forms that use the Orbeon "Wizard" view...the initial page displays properly, but navigation from one section to another seems to be broken.
The only unusual thing we see in the log files is this message:
WARN XmlLibraryChecker - Looking for a valid Parser...
Checking for Xerces, found version Xerces-J 2.11.0 needed version Xerces-J 2.9.0
Warning: Failed find a valid Parser!
Please add an appropriate Parser to the class-path, e.g. in the 'endorsed' folder of the servlet container or in the 'endorsed' folder of the JRE.
In the Orbeon webapps/orbeon/WEB-INF/lib directory, we see a xerces-2.11-orbeon.jar all of the JAR files in this directory are dated November 2013 and have not been changed best we can tell. I understand this is a "Warn" message, but there doesn't seem to be any other sign of problem.
In the case of Form Builder, we go to the listing of all the current forms, and are unable to page through the list. When we click on the paging control at the bottom of the page, we see an HTTP request to "xforms-server" from "connection.js:467". The data sent on this request is:
<!DOCTYPE xxf:event-request [<!ENTITY nbsp " ">]>
<xxf:event-request xmlns:xxf="http://orbeon.org/oxf/xml/xforms">
<xxf:uuid>a3a297feb1356b5190ce1050fdc165bfadae85e3</xxf:uuid>
<xxf:sequence>2</xxf:sequence>
<xxf:action>
<xxf:event name="DOMActivate" source-control-id="xf-432"></xxf:event>
</xxf:action>
</xxf:event-request>
This seems to work (HTTP response code 200) and we seem to get a response that has the next page worth of values in a long XML format. The display at the browser is unchanged however...the list of displayed items in Form Builder doesn't move or change in any way.
The pattern in our "Wizard View" forms is similar...we see the same HTTP transaction sent to the server, get a similar XML response, but no display update occurs.
Clients are Chrome 58 and 60, plus Safari 10.1.2.
Server side is Tomcat 7 with Java 1.7.051 and MySQL as the persistence layer.

Related

Disabling SPA at porlet level

I have an WAR style application that has been converted from Liferay 6.2 to 7.1. it needs to have SPA turned off and has been tested successfully when turning off SPA at the portal level but would like to turn off at the portlet level.
have tried adding the false property to the object in liferay-portlet.xml but the app doesn't load into Liferay correctly after that and complains.
this appears to be the recommended approach from https://portal.liferay.dev/docs/7-0/tutorials/-/knowledge_base/t/automatic-single-page-applications. there may be some "order" necessary to these properties? I can't determine exactly what that might be from this DTD https://docs.liferay.com/ce/portal/7.1-latest/definitions/liferay-portlet-app_7_1_0.dtd.html#single-page-application.
a further inspection of the error message that occurs when the portlet is loading provides help that indicates the properties order that should appear in the liferay-portlet.xml. I'm able to deploy the portlet without error now.
unfortunately, the portlet still does not act properly. its an EXTJs front end and there are consistent "The schema can only be reconfigured once" and "duplicate object" errors reported in the browser console. reloading the entire page works fine.
how might one start to debug this issue?
I disabled SPA in a WAR application by setting <single-page-application> to false in liferay-portlet.xml
See: https://github.com/jorgediaz-lr/index-checker/blob/master/docroot/WEB-INF/liferay-portlet.xml#L18
<portlet>
<portlet-name>index_checker</portlet-name>
<icon>/icon.png</icon>
<configuration-action-class>com.liferay.portal.kernel.portlet.DefaultConfigurationAction</configuration-action-class>
<control-panel-entry-category>
apps
</control-panel-entry-category>
<control-panel-entry-weight>1.5</control-panel-entry-weight>
<control-panel-entry-class>
jorgediazest.indexchecker.portlet.IndexCheckerControlPanelEntry
</control-panel-entry-class>
<preferences-company-wide>true</preferences-company-wide>
<preferences-unique-per-layout>false</preferences-unique-per-layout>
<single-page-application>false</single-page-application>
<header-portlet-css>/css/main.css</header-portlet-css>
<footer-portlet-javascript>
/js/main.js
</footer-portlet-javascript>
<css-class-wrapper>index_checker-portlet</css-class-wrapper>
</portlet>
If that setting is not working to you and causes errors, please copy your log traces with the problems.

Umbraco with Windsor Castle error after adding nuPickers plugin

With an existing Umbraco site running fine we added the nuPickers plugin which does not seem to like Castle. In the browser console we are seeing a lot of 404 / 500 errors being generated for the embedded resources within the plugin. (The plugin is a single DLL with css and js files embedded in it.)
The site continues running fine (back and front ends), except for the plugin.
The Event log is showing: "No component for supporting the service nuPickers.EmbeddedResourceController was found"
We have tried route.ignoreroute in our route config, and also adding a handler in web.config, both unsuccessfully, as we do not think the resource requests should be getting to castle?
Any help or pointers gratefully accepted!
Just in case anyone comes across this ticket, we 'solved' this by
Getting all of the embedded resources, (html, js & css - not the classes)
Physically placing them inside the App_plugins folder in the correct structure (as they were being requested),
Renaming the js and css files (by adding the .nu after the file
extension), and,
Adding the following mime types into the web.config
mimeMap fileExtension=".css.nu" mimeType="text/css"
mimeMap fileExtension=".js.nu" mimeType="application/javascript"
Then, everything seems to work - but there MUST be a better solution, surely?

Netbeans project integration with different frameworks

We work as a third party with MVC traditional framework with oracle 11g (no hibernate) with login.jsp page to enter the systems
The main company took the
struts2 and spring and hibernate frameworks approach also with oracle 11g and they have thier login.jsp
When we integrated our work together the login.jsp approved the is the last one due to privileges issues (from the main company) although they are too similar but its programmed with hibernate,struts,spring.
There is one problem occurred that their login.jsp page gives an error (below)
java.lang.IllegalArgumentException: Unknown entity: com.uts.entities.appsecurity.Users
The details is too long so i stored it in jsfiddle just for viewing...
The error
Now i should mention when integration i added some extra files .xml from the main company to work with theire framework in addition to their actual work:
1)libraries
2)persistence.xml
3)struts.xml
4)validators.xml
5)applicationContext.xml
Now if i enter the login.jsp i used to use in development it works but not the main company login.jsp we are looking for a solution for this !
the deploy does not give an error and when pressing login apachetomcat output does not give an error , it just redirect to error page on http://localhost:8084/HumanResources_2/presentation/securityAction.action
The main company login
http://localhost:8084/HumanResources_2/presentation/Login.jsp
Our(my) login
http://localhost:8084/HumanResources_2/login.jsp
Another thing the login page of the main company the text appearing as undefined all of them.
i don`t know what causing this it works before integration , note that the main company using Eclipse am ready for any thing i can provide
the problem was a BUG in netbeans
look at the photo there is line i must remove to make it work the selected one
the check when true the above line added automatically am not sure why but it solved it

How to customize crystal_servlet_uri?

I am having a problem with Crystal Report in JSP.
The report is viewed 1st page successfully, but I could not be viewed the next page, or export.
I've used a tool to catch the error. I realize that the error cause by invalid request.
For example my project url: http://localhost:8080/myproject, but when we navigate to next page or export report, it request to http://localhost:8080/CrystalReportViewerHandler.
It should be http://localhost:8080/myproject/CrystalReportViewerHandler.
What I have tried is put crystal_servlet_uri in web.xml:
<context-param>
<param-name>crystal_servlet_uri</param-name>
<param-value>/myproject/CrystalReportViewerHandler</param-value>
</context-param>
However, the request is not change (still http://localhost:8080/CrystalReportViewerHandler).
Does any one know another solution for this problem?
Thanks!
I experienced this exact same problem. The only solution I have found that works is to place your CrystalReportsViewer.jsp in the document root of the project. As soon as you place it anywhere under WEB-INF, the 'myproject' is dropped from subsequent calls (like next page).
However, if the JSP you use to create and process the CrystalReportViewer object is placed alongside WEB-INF (not in it), then the 'myproject' re-appears and everything works. (Or at least it did for me.)
This is maybe not the best news from a security perspective, but the requester must already have a ReportClientDocument to pass to this JSP, and that part you can control access to.

GWT - spring security - caching issue

I have a GWT application which is secured by Spring Security. I have a Main.html which serves the application and Login.html for login. For most part everything works fine everytime. But sometimes after restarting my application I can still access Main.html - although most of the widgets on the page are unusable. I can see the Login.html's HTML in the console being printed as exception. On refreshing, it takes me to login page. Has anyone ran into similar issue? Is this some kind of caching issue? How can this be avoided?
It seems that in your case your bootstrap file is beining cached and thus a wrong version of your app is being loaded.
You have to make sure that your bootstrap file (the one which is named nocache) is never cached. See here for more details.
You can check if your bootstrap file is cached by using Firebug and looking at the HTTP requests for your scripts. You can check two things:
If the correct <md5>.cache.html are loaded (compare it to the ones in your gwt output folder).
The response type of your .nocache. file is not 304 or so.
Adding meta tag on top of my Main.html - helped me resolve my issue for now.
Read this for more details : HTML http-equiv Attribute