[RESOLVIDO] erro no vraptor

2 respostas
andreluis

tenho um metodo lista onde em um computador funciona , mais no meu nao:

o meu lista.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
	pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib tagdir="/WEB-INF/tags" prefix="f"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<c:import url="../../../include/headPesquisa.jsp" />
</head>
<body>
<f:topoMenu
	caminhoImagem="../imagens/formulario/images/titulosform/img_Devolucao.png"
	descricaoCadastro="Devolucao de Acervos" />

<div id="dialog-confirm" title="Deletar o registro">
<p><span class="ui-icon ui-icon-alert"
	style="float: left; margin: 0 7px 20px 0;"></span>Esse item será
deletado permanentemente, Deseja mesmo continuar?</p>
</div>
<div style="width: 950px; margin: auto; padding-top: 20px;">
<table cellpadding="0" cellspacing="0" border="0" class="tablesorter"
	id="example">
	<thead>
		<tr>
			<th width="23%" style="color: #789c5e;">Acervo</th>
			<th width="24%" style="color: #789c5e;">Leitor</th>
			<th width="23%" style="color: #789c5e;">Biblioteca</th>
			<th width="22%" style="color: #789c5e;">Data da Devolucao</th>
			<th width="8%" style="color: #789c5e; text-align: center;">Ações</th>
		</tr>
	</thead>
	<tbody>
		<c:forEach items="${devolucaoList}" var="devolucao">
			<tr>
				<td>${devolucao.codigoLeitor }</td>
				<td>${devolucao.codigoLeitor }</td>
				<td>${devolucao.biblioteca }</td>
				<td><fmt:formatDate value='${devolucao.dataDevolucao }'
					type='date' pattern='MM/dd/yyyy' /></td>
				<td style="text-align: center;"><a
					href="edita?id=${devolucao.id }"><img
					src="../imagens/formulario/images/editar.png" width="32"
					height="29" border="0" /></a> <a href="#" class="excluir"
					onclick="urlDel('remove?id=${devolucao.id}')"><img
					src="../imagens/formulario/images/excluir.png" width="32"
					height="29" border="0" /></a></td>
			</tr>
		</c:forEach>
		<tfoot>
			<tr>
				<td><input name="search_codigoAcervo" type="text"
					class="search_init" value="Busca Acervo"
					style="width: 95%; margin: auto; overflow: auto;" /></td>
				<td><input type="text" name="search_codigoLeitor"
					value="Busca Leitor" class="search_init"
					style="width: 95%; margin: auto; overflow: auto;" /></td>
				<td><input type="text" name="search_biblioteca"
					value="Busca Biblioteca" class="search_init"
					style="width: 95%; margin: auto; overflow: auto;" /></td>
				<td><input type="text" name="search_dataDevolucao"
					value="Busca Cutter" class="search_init"
					style="width: 95%; margin: auto; overflow: auto;" /></td>
				<td></td>
			</tr>
		</tfoot>
</table>
</div>
</body>
</html>

e o erro :

java.lang.StringIndexOutOfBoundsException: String index out of range: 0

java.lang.String.charAt(Unknown Source)

org.hibernate.type.CharacterType.get(CharacterType.java:52)

org.hibernate.type.NullableType.nullSafeGet(NullableType.java:184)

org.hibernate.type.NullableType.nullSafeGet(NullableType.java:173)

org.hibernate.type.AbstractType.hydrate(AbstractType.java:105)

org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2124)

org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1404)

org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1332)

org.hibernate.loader.Loader.getRow(Loader.java:1230)

org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:603)

org.hibernate.loader.Loader.doQuery(Loader.java:724)

org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)

org.hibernate.loader.Loader.doList(Loader.java:2228)

org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2125)

org.hibernate.loader.Loader.list(Loader.java:2120)

org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:118)

org.hibernate.impl.SessionImpl.list(SessionImpl.java:1596)

org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:306)

br.com.biblioteca.Dao.movimentacao.DevolucaoDao.listaTudo(DevolucaoDao.java:30)

br.com.biblioteca.controller.movimentacao.DevolucaoController.lista(DevolucaoController.java:23)

sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

java.lang.reflect.Method.invoke(Unknown Source)

br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:57)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:77)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:42)

br.com.caelum.vraptor.core.InstantiatedInterceptorHandler.execute(InstantiatedInterceptorHandler.java:47)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.interceptor.InterceptorListPriorToExecutionExtractor.intercept(InterceptorListPriorToExecutionExtractor.java:46)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:80)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:67)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)

br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)

br.com.caelum.vraptor.core.DefaultRequestExecution.execute(DefaultRequestExecution.java:70)

br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)

br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:56)

br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

2 Respostas

G

Isso é um erro no Hibernate, e não no Vraptor. Além disso evite usar esses títulos muito genéricos.

Se você notar no toplevel de sua exception há isso aqui:

java.lang.StringIndexOutOfBoundsException: String index out of range: 0 java.lang.String.charAt(Unknown Source) org.hibernate.type.CharacterType.get(CharacterType.java:52)

Seguido disso aqui:

br.com.biblioteca.Dao.movimentacao.DevolucaoDao.listaTudo(DevolucaoDao.java:30) br.com.biblioteca.controller.movimentacao.DevolucaoController.lista(DevolucaoController.java:23)

Pelo nome do seu método imagino que você esteja listando os Devolucao. Pela mensagem de erro eu imagino que há algum campo que na base de dados foi gravado errado. O Hibernate está esperando que tenha um caractere que não existe. No exemplo abaixo note que o código abaixo dará um StringIndexOutOfBoundsException.

Verifique seu cadastro no banco de dados, ou quem sabe cole ou anexe aqui sua entidade.

andreluis

muito obrigado…
o erro era este mesmo…
valew… :slight_smile:

Criado 18 de junho de 2010
Ultima resposta 18 de jun. de 2010
Respostas 2
Participantes 2