Custom JSP Tag issue - tags

I'm getting some unusual exception as below.
Sep 26, 2012 12:09:50 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: <h3>Validation error messages from TagLibraryValidator for c in /Test.jsp</h3><p>null: org.xml.sax.SAXParseException: Element or attribute do not match QName production: QName::=(NCName':')?NCName.</p><h3>Validation error messages from TagLibraryValidator for sql in /Test.jsp</h3><p>null: org.xml.sax.SAXParseException: Element or attribute do not match QName production: QName::=(NCName':')?NCName.</p><h3>Validation error messages from TagLibraryValidator for x in /Test.jsp</h3><p>null: org.xml.sax.SAXParseException: Element or attribute do not match QName production: QName::=(NCName':')?NCName.</p><h3>Validation error messages from TagLibraryValidator for fmt in /Test.jsp</h3><p>null: org.xml.sax.SAXParseException: Element or attribute do not match QName production: QName::=(NCName':')?NCName.</p>
Actually I've implemented a custom tag.
When I used that custom tag using taglib its working fine.
<%#taglib prefix="path" uri="PathGenerator"%>
But when i started using it with other JSTL tag libs. Its generating the above exception.
<%# taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
<%# taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%# taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%# taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%# taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<%# taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>
<%#taglib prefix="path" uri="PathGenerator"%>
Can anyone please help me.

Related

Wildfly 27.0.1 serves blank page instead of administration console

I think I lost some hair on this one. I'm having a problem with Wildfly - I installed it on a remote server, however, when I try to enter the administration console it gives me a blank page only.
Wildfly version 27.0.1.Final
Problem:
I visit MYDOMAIN.XYZ where I should see the administration console
I pass the authorization with user details created via ssh
I'm redirected to MYDOMAIN.XYZ/console/index.html
The loader is briefly visible, but it disappears very soon
As a final result this document is served:
<!DOCTYPE html\>
<html class="layout-pf layout-pf-fixed" lang="en"\>
<head\>
<title\>HAL Management Console\</title\>
<meta charset="utf-8"\>
<meta http-equiv="x-ua-compatible" content="ie=edge"\>
<meta name="viewport" content="width=device-width, initial-scale=1"\>
<link rel="icon shortcut" type="image/x-icon" href="favicon.db74b3b0.ico"\>
<link rel="apple-touch-icon" href="apple-touch-icon.fedc4af6.png"\>
<link rel="stylesheet" href="dev.291b1e16.css" media="screen"\>
<script type="module" src="dev.75953f7e.js"\>\</script\>\<script src="dev.159a2c8f.js" nomodule defer\>\</script\>\<script src="hal.nocache.js"\>\</script\>
</head\>
<body\> \</body\>
</html\>
Here's a log from console
index.html:1 GET https://MYDOMAIN.XYZ/console/dev.75953f7e.js net::ERR_ABORTED 403
hal-0.js:10337 Set log level to INFO
hal.nocache.js:6 \[Violation\] 'readystatechange' handler took 202ms
hal-0.js:10706 GET https://MYDOMAIN.XYZ/keycloak/adapter/wildfly-console 404
hal-0.js:10713 10:09:20.670 ERROR o.j.h.c.b.endpoint.EndpointManager Keycloak adapter 'https://MYDOMAIN.XYZ/keycloak/adapter/wildfly-console' doesn't exist - status: 404
hal-0.js:8553 POST https://MYDOMAIN.XYZ/management 403
hal-0.js:10713 10:09:20.730 ERROR o.j.h.d.dispatch.Dispatcher Dispatcher error: Authentication required.
hal-0.js:10713 10:09:20.730 ERROR o.j.h.c.bootstrap.HalBootstrapper Bootstrap error: Dispatcher error: Authentication required.
dev.291b1e16.css:1 GET https://MYDOMAIN.XYZ/console/OpenSans-Regular-webfont.b6d3c411.woff2 net::ERR_ABORTED 403
dev.291b1e16.css:1 GET https://MYDOMAIN.XYZ/console/OpenSans-Regular-webfont.e5de314f.woff net::ERR_ABORTED 403
dev.291b1e16.css:1 GET https://MYDOMAIN.XYZ/console/OpenSans-Regular-webfont.8bd2b33b.ttf net::ERR_ABORTED 403
When I start wildfly several warnings are logged:
10:08:17,750 WARN \[org.jboss.as.warn.fd-limit\] (main) WFLYSRV0071: The operating system has limited the number of open files to 3000 for this process; a value of at least 4096 is recommended 10:08:19,117 WARN \[org.jboss.as.controller\] (ServerService Thread Pool -- 26) WFLYCTL0481: The runtime dependency package 'io.smallrye.opentracing-contrib' is already registered at location '/subsystem=microprofile-opentracing-smallrye' 10:08:19,126 WARN \[org.jboss.as.controller\] (ServerService Thread Pool -- 26) WFLYCTL0481: The runtime dependency package 'io.smallrye.opentracing-contrib' is already registered at location '/subsystem=microprofile-opentracing-smallrye' 10:08:19,821 WARN \[org.jboss.as.txn\] (ServerService Thread Pool -- 76) WFLYTX0013: The node-identifier attribute on the /subsystem=transactions is set to the default value. This is a danger for environments running multiple servers. Please make sure the attribute value is unique. 10:08:20,355 WARN \[org.wildfly.extension.elytron\] (MSC service thread 1-6) WFLYELY00023: KeyStore file '/home/FOLDER/wildfly/standalone/configuration/application.keystore' does not exist. Used blank. 10:08:20,372 WARN \[org.wildfly.extension.elytron\] (MSC service thread 1-1) WFLYELY01084: KeyStore /home/FOLDER/wildfly/standalone/configuration/application.keystore not found, it will be auto generated on first use with a self-signed certificate for host localhost
I tried disabling WAF and changing the configuration in standalone.xml from:
<interface name="management">
<inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
</interface>
to
<interface name="management">
<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
</interface>
However, this did not have any effect.
These keycloak errors are suspicious, especially that Wildfly moved to elytrum (from what I read). However, I'm not sure how I should handle them. What can be the problem? Is there something I can do to fix this? I really appreciate any help you can provide.

Why does Install4j fail to parse updates.xml file with SAXParseException?

I am new to install4j and stackoverflow, so appologies if my qustion is not structured properly.
We are using install4j version 6.1.2 (build 6275).
When our application is launched, install4j auto update receives the following error when it checks for updates, and the update is not performed (application launches with old version):
[ERROR] com.install4j.runtime.beans.actions.update.CheckForUpdateAction [ID 322]: could not download file
java.io.IOException
java.io.IOException
at com.install4j.runtime.installer.helper.XmlHelper.createIoException(XmlHelper.java:307)
at com.install4j.runtime.installer.helper.XmlHelper.parse(XmlHelper.java:90)
at com.install4j.runtime.installer.helper.XmlHelper.parseFile(XmlHelper.java:44)
at com.install4j.runtime.installer.helper.XmlHelper.parseFile(XmlHelper.java:40)
at com.install4j.runtime.installer.config.update.UpdateDescriptorImpl.read(UpdateDescriptorImpl.java:73)
at com.install4j.runtime.beans.actions.update.CheckForUpdateAction.execute(CheckForUpdateAction.java:38)
at com.install4j.runtime.beans.actions.SystemInstallOrUninstallAction.install(SystemInstallOrUninstallAction.java:29)
at com.install4j.runtime.installer.ContextImpl$7.executeAction(ContextImpl.java:1668)
at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1659)
at com.install4j.runtime.installer.ContextImpl$7.fetchValue(ContextImpl.java:1656)
at com.install4j.runtime.installer.helper.comm.actions.FetchObjectAction.execute(FetchObjectAction.java:14)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionDirect(HelperCommunication.java:272)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionInt(HelperCommunication.java:247)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.executeActionChecked(HelperCommunication.java:185)
at com.install4j.runtime.installer.helper.comm.HelperCommunication.fetchObjectChecked(HelperCommunication.java:168)
at com.install4j.runtime.installer.ContextImpl.performActionIntStatic(ContextImpl.java:1656)
at com.install4j.runtime.installer.InstallerContextImpl.performActionInt(InstallerContextImpl.java:151)
at com.install4j.runtime.installer.ContextImpl.performAction(ContextImpl.java:1103)
at com.install4j.runtime.installer.controller.Controller.executeAction(Controller.java:367)
at com.install4j.runtime.installer.controller.Controller.executeActions(Controller.java:333)
at com.install4j.runtime.installer.controller.Controller.handleCommand(Controller.java:194)
at com.install4j.runtime.installer.controller.Controller.start(Controller.java:94)
at com.install4j.runtime.installer.Application.runApplication(Application.java:71)
at com.install4j.runtime.installer.Application.runApplicationInProcess(Application.java:52)
at com.install4j.runtime.installer.helper.apiimpl.ApplicationLauncherImpl$1.run(ApplicationLauncherImpl.java:39)
at com.install4j.runtime.installer.helper.apiimpl.ApplicationLauncherImpl.launchApplicationInProcess(ApplicationLauncherImpl.java:46)
at com.install4j.api.launcher.ApplicationLauncher.launchApplicationInProcess(ApplicationLauncher.java:58)
at com.install4j.runtime.launcher.LauncherIntegration$2.run(LauncherIntegration.java:110)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegration(LauncherIntegration.java:114)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegrations(LauncherIntegration.java:58)
at com.install4j.runtime.launcher.LauncherIntegration.processLauncherIntegrations(LauncherIntegration.java:51)
at com.install4j.runtime.launcher.LauncherIntegration.checkIntegrations(LauncherIntegration.java:38)
at com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:25)
Caused by: org.xml.sax.SAXParseException; systemId: file:/C:/Users/.../AppData/Local/Temp/i4jupd5100269909742792694.xml; lineNumber: 1; columnNumber: 50; White spaces are required between publicId and systemId.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at com.install4j.runtime.installer.helper.XmlHelper.parse(XmlHelper.java:88)
... 31 more
Execute action not successful after 61 ms
[INFO] com.install4j.runtime.beans.screens.CustomizableProgressScreen [ID 320]: Canceled
Our updates.xml file begins with the following line:
<?xml version="1.0" encoding="UTF-8"?>
We have multiple deployment environments that use the same install4j version for the same application, but use different deployment destinations and version numbers. The auto updates are working properly in most of these environments and the updates.xml files in those environments start with the same line as the environment that is having this problem.
I didn't think it was related, but just in case, the environments that are working properly use internally hosted sites. The environment that is failing is an AWS hosted site.
Edit:
The file listed in the log does not exist. But it appears that other attempts have left behind i4jupd*.xml files, each of which are HTML format indicating the updates.xml file was moved "here"
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved here.</p>
</body></html>
Thanks for your time!

Atlassian Confluence Blueprint wizard - Non existent soy template

I am building a confluence plugin including blueprint wizard dialog with blueprint. But when I try to load the wizard JS error appears in browser console,
Uncaught error wizard points to a non-existent Soy template, OutputPlugin.Blueprints.Simple.page1Form'. Check your web-resources or server logs.
What I have tried are,
Checked server logs. No evidence was there.
Tried clean and reinstall plugin and SDK.
However, I have already added soy into web resources in atlassian-plugin.xml file.
I followed atlassian confluence plugin tutorial "Write an intermediate blueprint plugin"
I am using Confluence 6.14.0 and atlasisian SDK 8.16.0
atlassian-plugin.xml
<web-resource key="ma2.create_wizard-resources" name="ma2.create_wizard Web Resources">
...
<transformation extension="soy">
<transformer key="soyTransformer">
<functions>com.atlassian.confluence.plugins.soy:soy-core-functions
</functions>
</transformer>
</transformation>
...
<resource type="download" name="outputTemplate.soy.js" location="/soy/outputTemplate.soy" />
</web-resource>
<blueprint key="output-blueprint" content-template-key="output-template" index-key="output-index" i18n-name-key="output.blueprint.name">
<content-template ref="output-template"/>
<dialog-wizard key="outputTemplate-wizard">
<dialog-page id="page1Id"
template-key="OutputPlugin.Blueprints.Simple.page1Form"
title-key="output.blueprint.wizard.page1.title"
description-header-key="test"
description-content-key="test1"
last="true"/>
</dialog-wizard>
</blueprint>
outputTemplate.soy
{namespace OutputPlugin.Blueprints.Simple}
/**
* A form that accepts a person's name
*/ 
{template .page1Form}
<form action="#" method="post" class="aui">
<fieldset>
<div class="field-group">
<label for="contentvar">{getText('output.blueprint.form.label.title.vName')}</label>
<input id="contentvar" class="text" type="text" name="contentVar">
</div>
</fieldset>
</form>
{/template}
Finally found the solution. First problem was my server console did not logged necessary logs. There were only java jdk and synchrony logs. So I configured logs as mentioned in this confluence support page to have all the logs of "com.atlassian.confluence.core". Then I found the error
[INFO] [talledLocalContainer] com.atlassian.soy.impl.QuieterSoySyntaxException: In file /soy/outputTemplate.soy: End of SoyDoc not at end of line [line 4, column 1].
Finally the problem was a space after end of soy doc.
/**
* A form that accepts a person's name
*/{space}
instead of
/**
* A form that accepts a person's name
*/

Liferay - Attribute "configurable" must be declared for element type "setting" Exception

Trying to setup a theme settings in Liferay 6.2.1 CE & EE.
My liferay-look-and-feel.xml looks like:
<?xml version="1.0"?>
<!DOCTYPE look-and-feel PUBLIC "-//Liferay//DTD Look and Feel 6.0.0//EN" "http://www.liferay.com/dtd/liferay-look-and-feel_6_0_0.dtd">
<look-and-feel>
<compatibility>
<version>6.2.0+</version>
</compatibility>
<theme id="wwhs-login-theme" name="wwhs-login-theme" >
<settings>
<setting type="select" configurable="true"
key="choose-login-theme-wwhs"
options="client-operations-login-theme,client-experience-login-theme"
value="client-experience-login-theme" ></setting>
</settings>
</theme>
</look-and-feel>
When I try to build it, getting the below error:
07:48:57,413 ERROR [localhost-startStop-2][ThemeLocalServiceImpl:268]
com.liferay.portal.kernel.xml.DocumentException: Error on line 10 of
document : Attribute "configurable" must be declared for element type
"setting". Nested exception: Attribute "configurable" must be declared
for element type "setting".
What am I missing?
Found an answer. This error is due to the wrong DOCTYPE configuration.
<!DOCTYPE look-and-feel PUBLIC "-//Liferay//DTD Look and Feel 6.0.0//EN" "http://www.liferay.com/dtd/liferay-look-and-feel_6_0_0.dtd">
needs to be changed to
<!DOCTYPE look-and-feel PUBLIC "-//Liferay//DTD Look and Feel 6.2.0//EN" "http://www.liferay.com/dtd/liferay-look-and-feel_6_2_0.dtd">
The 6.0.0 DTD File doesn't have the configurable (and additional) attribute which have been added in later versions.
Ref: http://www.liferay.com/community/forums/-/message_boards/message/16388636

Eclipse/Tomcat forgetting about custom tags?

I'm using Eclipse Kepler with Tomcat 7 on Windows 7 64 bit.
If I clean the project and restart the server, everything works great. But if I work for a couple of minutes... like editing a jsp... Tomcat barfs up the following...
The tag it complains about missing is the tag for page layout. Nothing exciting there other than it does some jspf includes and the content pages also call other tags. But again, nothing exciting...
I don't see how I could be causing this as the thing compiles and runs fine initially. But then Tomcat seems to lose track of the tag classes.
If I clean the project, it goes back to working for a while...
Any ideas?
Thanks
HTTP Status 500 - Unable to compile class for JSP:
type Exception report
message Unable to compile class for JSP:
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 33 in the jsp file: /folder/page.jsp
org.apache.jsp.tag.weblayout_002dmain_tag cannot be resolved to a type
30:
31:
32:
33: <tags:layout-main>
34: <jsp:attribute name="title">page</jsp:attribute>
35: <jsp:attribute name="section">user</jsp:attribute>
36: <jsp:attribute name="handle">page</jsp:attribute>
An error occurred at line: 33 in the jsp file: /folder/page.jsp
org.apache.jsp.tag.weblayout_002dmain_tag cannot be resolved to a type
30:
31:
32:
33: <tags:layout-main>
34: <jsp:attribute name="title">page</jsp:attribute>
35: <jsp:attribute name="section">user</jsp:attribute>
36: <jsp:attribute name="handle">page</jsp:attribute>
An error occurred at line: 106 in the jsp file: /folder/page.jsp
org.apache.jsp.tag.webrating_tag cannot be resolved to a type
103: <div class="page clearfix">
104: <div class="title">
105: <h3>${page.name}</h3>
106: <br><tags:rating value="${3}"/>
107: <br>${page.type}
108: </div>
109: <div class="hours">
Try Any of the following, it should work
copy the jar in WEB-INF/lib/ directory and then restart your web container
Try
<%# page language="java" import="Pkgname.className.*" %>
For example
<%# page language="java" import="org.apache.jsp.tag.webrating" %>
Clean Project and Restart Server