My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
  Advanced search   Search tips   Subscriptions
Issue 174: jsp.error.beans.property.conversion at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager
1 person starred this issue and may be notified of changes. Back to list
Status:  Invalid
Owner:  ----
Closed:  Jan 2009


 
Reported by bhaveshs...@gmail.com, Jan 5, 2009
What steps will reproduce the problem?
1.
2.
3.

What is the expected output? What do you see instead?
I wanted to use Jmesa in place of display:table tag, instead I get this error:

ERROR [/goalmind] [http-8080-Processor25] 05 Jan 2009 15:55:32: error
org.apache.jasper.JasperException: jsp.error.beans.property.conversion
	at
org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager(JspRuntimeLibrary.java:885)
	at
org.apache.jsp.issues.issueTypeList_jsp._jspx_meth_jmesa_tableFacade_0(issueTypeList_jsp.java:618)
	at
org.apache.jsp.issues.issueTypeList_jsp._jspService(issueTypeList_jsp.java:157)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


What version of the product are you using? On what operating system?
I am using Jmesa2.4


Please provide any additional information below.

I am working on Tomcat 5.5
as per the Setup, I put the jars , js files, css files in the required places.

controller:
//getIssueBean().getAllTypes() returns a List of objects of Bean Issue
request.setAttribute("issueTypes", getIssueBean().getAllTypes());

my jsp page:
<form name="test" action="/issues/listIssueTypes">
<jmesa:tableFacade
        id="issueTag"
        items="${issueTypes}"
        maxRows="2"
        stateAttr="restore"
        var="issueitem">
  <jmesa:htmlTable caption="Issue" width="600px">
    <jmesa:htmlRow>

        <jmesa:htmlColumn property="name" titleKey="common.headers.name" /> 

     
    </jmesa:htmlRow>
  </jmesa:htmlTable>
</jmesa:tableFacade>





Jan 6, 2009
#1 bhaveshs...@gmail.com
problem resolved.
Jan 6, 2009
Project Member #2 jeff.johnston.mn@gmail.com
(No comment was entered for this change.)
Status: Invalid
May 11, 2009
#3 diego.lo...@gmail.com
I am trying to use JMesa but I get the same problem. ¿Could you tell me how you 
could resolved it?

Thanks in advance
May 12, 2009
#4 bhaveshs...@gmail.com
Hey diego, its been a while I worked on jmesa. I actually don't remember what
resolved the problem. But I could give you my project setup:

I had these files added:
      jsp/javascript/jquery.bgiframe.pack.js
      jsp/javascript/jquery.jmesa.js
      jsp/javascript/jmesa.min.js
      jsp/javascript/jquery-1.2.6.js
      jsp/javascript/jquery-1.2.2.pack.js
      jsp/javascript/jmesa.js
      jsp/javascript/jquery.jmesa.min.js
      jsp/javascript/jquery-1.2.6.min.js


      jsp/stylesheet/jmesa.css
      jsp/stylesheet/jmesa-pdf.css
      jsp/WEB-INF/jmesa.tld
      jsp/WEB-INF/jmesa.properites

in the web.xml
---------------
<context-param>
   <param-name>jmesaPreferencesLocation</param-name>
    <param-value>/WEB-INF/jmesa.properties</param-value>
  </context-param> 

   <taglib>
    <taglib-uri>jmesa</taglib-uri>
    <taglib-location>/WEB-INF/jmesa.tld</taglib-location>
  </taglib>


In the controller:
------------------
//getTestBean().getAllTypes() returns a List of objects of Tests
request.setAttribute("issueTypes", getTestBean().getAllTypes());


In the jsp page:
---------------

<%@ taglib prefix="jmesa" uri="/WEB-INF/jmesa.tld" %>

+<form name="test" action="test/test.do">
+<jmesa:tableFacade
+        id="issueTag"
+        items="${issueTypes}"
+        stateAttr="restore"
+        var="issueType"
+        maxRows="2"
+        exportTypes="jexcel,csv,pdf"
+        maxRowsIncrements="2,4,6" 
+        editable="true" >
+  <jmesa:htmlTable caption="ISSUE TYPES" width="500px" styleClass="data">
+    <jmesa:htmlRow>
+
+        <jmesa:htmlColumn property="name" titleKey="common.headers.name" />
+        <jmesa:htmlColumn property="active" titleKey="Active" /> 
+        <jmesa:htmlColumn property="firstname" titleKey="Lastname" />
    </jmesa:htmlRow>
+  </jmesa:htmlTable>
+</jmesa:tableFacade>



-----------
Hope this resolves your problem.
Jul 27, 2009
#5 todd.m.o...@gmail.com
If you get this error, maybe check the "items" attribute on the tableFacade tag? I
was getting the error because I forgot the "${...}".
Nov 20, 2009
#6 jpark...@gmail.com
I have tried many things including checking for "${...}" but cannot resolve this 
error.  My JSP code is the following:

<%@ taglib uri="/WEB-INF/tld/jmesa.tld" prefix="jmesa"%>
<%@ page language="java"%>

<%
	// Following code stops caching of this JSP.  Use 'private' instead of 'no-
cache'.  'private' allows
	// Microsoft Office documents to be downloaded over SSL, which 'no-cache' 
does not allow in Internet Explorer.
	// Note: Do not specify 'no-store' as a Cache-control parameter, since 'no-
store' prevents Microsoft Office
	// documents from opening directly from the Web browser.
	response.setHeader("Pragma", "private"); // for HTTP 1.0
	response.setHeader("Cache-control", "private, must-revalidate"); // for HTTP 
1.1
	response.setHeader("Expires", "-1");
%>

<html>
<head>
<title>Title</title>
<!-- Stylesheet -->
<link href="./stylesheets/styles.css" rel="stylesheet" type="text/css" />
<script src="./javascript/jmesa.js"></script>
<script src="./javascript/jmesa.min.js"></script>
<script src="./javascript/jquery.jmesa.js"></script>
<script src="./javascript/jquery.jmesa.min.js"></script>
<!-- End of Stylesheet -->
</head>
<body>
<jmesa:tableFacade id="siteTable" items="${sites}" maxRows="8"
	exportTypes="csv,excel" maxRowsIncrements="8,16,24" stateAttr="restore"
	var="siteBean">
	<jmesa:htmlTable caption="Site Search Results" width="600px">
		<jmesa:htmlRow>
			<jmesa:htmlColumn property="name" title="Site Name" />
			<jmesa:htmlColumn property="uid" title="Site Uid" />
			<jmesa:htmlColumn property="code" title="Site Code" />
		</jmesa:htmlRow>
	</jmesa:htmlTable>
</jmesa:tableFacade>

<script type="text/javascript">
function onInvokeAction(id) {
	setExportToLimit(id, '');
	createHiddenInputFieldsForLimitAndSubmit(id);
}
function onInvokeExportAction(id) {
	var parameterString = createParameterStringForLimit(id);
	location.href = '${pageContext.request.contextPath}/tag.run?' + 
parameterString;
}
</script>

</body>
</html>

My snippet of controller code is:

		Collection<UnofficialSite> unofficialSites = siteService
				.getUnofficialSitesByCriteria(hqiisCriteria);

		Collection<SiteBean> items = new ArrayList<SiteBean>();

		for (UnofficialSite uSite : unofficialSites) {
			SiteBean siteBean = new SiteBean();
			siteBean.setName(StringUtils.trimToEmpty(uSite.getName()));
			siteBean.setCode(StringUtils.trimToEmpty(uSite.getCode()));
			siteBean
					.setUid(Util.isPositiveNumber(uSite.getUid()) 
? Integer
							
.toString(unofficialSite.getUid())
							: Util.EMPTY_STRING);

			items.add(siteBean);
		}

		TableFacade tableFacade = new TableFacadeImpl("siteTable", request);
		tableFacade.setItems(items);
		tableFacade.setColumnProperties("name", "uid", "code");
		tableFacade.setExportTypes(response, CSV, EXCEL);

		Limit limit = tableFacade.getLimit();
		if (limit.isExported()) {
			tableFacade.getTable().setCaption("Sites");
			tableFacade.getTable().getRow().getColumn("name").setTitle(
					"Site Name");
			tableFacade.getTable().getRow().getColumn("uid").setTitle(
					"Site UID");
			tableFacade.getTable().getRow().getColumn("code").setTitle(
					"Site Code");
			tableFacade.render();
			return null;
		}

		request.setAttribute("sites", items);

		return mapping.findForward("searchSites");

I am using Struts 1.2.4 and Spring 2.0.8.  Any help is appreciated.  Thank you.

Powered by Google Project Hosting