[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
Mensagens enviadas por: robmsjr  XML
Perfil de robmsjr -> Mensagens enviadas por robmsjr [88] Ir para a página: Anterior  1, 2, 3, 4, 5, 6 Próximo 
Autor Mensagem
Oi,

To tentando colocar minha aplicação na locaweb em um jvm dedicado deles e estou tendo alguma dificuldade... Existe algo no framework que possa dar problemas nesse caso? Ou posso ficar tranquilo quanto a isso?

abraços
Funcionou perfeitamente.
Valeu mesmo.
Valeu mesmo. Estarei colocando em pratica amanhã e posto qualquer duvida.
Funcionou beleza.
Agora qual o porque disso? É simples de explicar?

abraços
Tentei mudar meu sistema para a nova versão do neo e agora não está aparecendo mais nenhuma tela, apenas o menu. Quando tento colocar o endereço de uma tela, faz até o select mas não aparece nada.

Fora isso estou com uma duvida meio fora do contexto do neo, mas agradeceria se alguem pudesse me ajudar.

A pasta do metadata a seguir:

.metadata\.plugins\org.eclipse.wst.server.core\tmp0\webapps

pode ser apagada não? Eu não estou conseguindo fazer com que o eclipse gere novamente os arquivos necessarios ali para roda a aplicação.

obrigado pela ajuda;

abraços
Valeu,

Estou utilizando o combo comum e tentando encontrar o erro... Se eu achar alguma coisa te digo.
Continando (se preferir ainda mando por email)

Tipochamada
Code:
 package org.neo.exemplo.bean;
 
 import java.util.Map;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Transient;
 
 import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
 import br.com.linkcom.neo.validation.annotation.MaxLength;
 import br.com.linkcom.neo.validation.annotation.Required;
 
 @Entity
 @SequenceGenerator(name="tipochamada_idtipochamada_seq", sequenceName="tipochamada_idtipochamada_seq")
 public class Tipochamada {
 	private Long idtipochamada;
 	private String tipochamada;
 	private String codigo;
 	private String tipoPublicacao;
 	
 	public Tipochamada(){
 	}
 	
 	public Tipochamada(String padrao){
 		this.codigo = padrao;
 		this.tipochamada = padrao;
 	}
 	
 	@Required
 	@Column(name="tipopublicacao")
 	public String getTipoPublicacao() {
 		return tipoPublicacao;
 	}
 	
 	@Transient
 	public String getTipoPublicacaoDescricao(){
 		if (this != null)
 			return TipoPublicacao.getMap().get(tipoPublicacao);
 		else
 			return "";
 	}
 	
 	@Transient
 	public Map<String,String> getTipoPublicacaoCombo(){
 		return TipoPublicacao.getMap();
 	}
 	
 	@Required
 	@MaxLength(40)
 	public String getCodigo() {
 		return codigo;
 	}
 	@Id
 	@GeneratedValue(strategy=GenerationType.AUTO, generator="tipochamada_idtipochamada_seq")
 	public Long getIdtipochamada() {
 		return idtipochamada;
 	}
 	
 	@DescriptionProperty
 	@Required
 	@MaxLength(60)
 	public String getTipochamada() {
 		return tipochamada;
 	}
 	
 	public void setCodigo(String codigo) {
 		this.codigo = codigo;
 	}
 	public void setIdtipochamada(Long idtipochamada) {
 		this.idtipochamada = idtipochamada;
 	}
 	public void setTipochamada(String tipochamada) {
 		this.tipochamada = tipochamada;
 	}
 	public void setTipoPublicacao(String tipoPublicacao) {
 		this.tipoPublicacao = tipoPublicacao;
 	}
 	
 
 }
 


ConteudoCrud

Code:
 package org.neo.exemplo.controller;
 
 import java.sql.Timestamp;
 
 import org.neo.exemplo.bean.Conteudo;
 import org.neo.exemplo.service.ConteudoService;
 
 import br.com.linkcom.neo.controller.Controller;
 import br.com.linkcom.neo.controller.crud.CrudController;
 import br.com.linkcom.neo.core.web.WebRequestContext;
 
 @Controller(path="/modulo/crud/Conteudo")
 public class ConteudoCrud extends CrudController<ConteudoFiltro, Conteudo, Conteudo> {
 	ConteudoService conteudoService;
 	
 	public ConteudoService getConteudoService() {
 		return conteudoService;
 	}
 
 	public void setConteudoService(ConteudoService conteudoService) {
 		this.conteudoService = conteudoService;
 	}
 
 	@Override
 	protected void salvar(WebRequestContext arg0, Conteudo conteudo) throws Exception {
 		Timestamp dataAtual = new Timestamp(System.currentTimeMillis());
 		if (conteudo.getIdconteudo() == null)
 			conteudo.setDataCadastro(dataAtual);
 		conteudo.setDataAlteracao(dataAtual);
 		super.salvar(arg0, conteudo);
 		conteudoService.geraXml(conteudo);
 	}
 }
 


ConteudoDAO

Code:
 package org.neo.exemplo.dao;
 
 import java.util.List;
 
 import org.neo.exemplo.bean.Conteudo;
 import org.neo.exemplo.bean.Home;
 import org.neo.exemplo.controller.ConteudoFiltro;
 
 import br.com.linkcom.neo.controller.crud.FiltroListagem;
 import br.com.linkcom.neo.persistence.GenericDAO;
 import br.com.linkcom.neo.persistence.QueryBuilder;
 
 public class ConteudoDAO extends GenericDAO<Conteudo> {
 	
 	@Override
 	public void updateEntradaQuery(QueryBuilder<Conteudo> query) {
 		query.leftOuterJoinFetch("conteudo.imagem");
 	}
 
 	@Override
 	public void updateListagemQuery(QueryBuilder<Conteudo> query, FiltroListagem _filtro) {
 		ConteudoFiltro filtro = (ConteudoFiltro) _filtro;
 		query.joinFetch("conteudo.canal")
 			.leftOuterJoinFetch("conteudo.subcanal")
 			.leftOuterJoinFetch("conteudo.imagem")
 			.whereLike("conteudo.titulo", filtro.getTitulo())
 			.where("conteudo.canal = ?", filtro.getCanal())
 			.where("conteudo.subcanal = ?", filtro.getSubcanal())
 			.where("conteudo.autor = ?", filtro.getAutor());
 	}
 
 	@Override
 	public Conteudo load(Conteudo conteudo) {
 		if (conteudo == null)
 			return null;
 		QueryBuilder<Conteudo> query= newQueryBuilder(Conteudo.class)
 			.from(Conteudo.class)
 			.joinFetch("conteudo.autor")
 			.joinFetch("conteudo.canal")
 			.leftOuterJoinFetch("conteudo.subcanal")
 			.leftOuterJoinFetch("conteudo.imagem")
 			.leftOuterJoinFetch("conteudo.imagem.arquivo")
 			.leftOuterJoinFetch("conteudo.imagem2")
 			.leftOuterJoinFetch("conteudo.imagem2.arquivo")
 			.leftOuterJoinFetch("conteudo.imagemChamada")
 			.leftOuterJoinFetch("conteudo.imagemChamada.arquivo");
 		
 		return query.entity(conteudo).unique();
 	}
 	
 	public Conteudo loadForChamada(Conteudo conteudo) {
 		if (conteudo == null)
 			return null;
 		QueryBuilder<Conteudo> query= newQueryBuilder(Conteudo.class)
 			.from(Conteudo.class)
 			.joinFetch("conteudo.canal")
 			.leftOuterJoinFetch("conteudo.subcanal")
 			.leftOuterJoinFetch("conteudo.imagemChamada")
 			.leftOuterJoinFetch("conteudo.imagemChamada.arquivo");
 		
 		return query.entity(conteudo).unique();
 	}
 	
 	public List<Conteudo> listForHome(Home home){
 		QueryBuilder<Conteudo> query = newQueryBuilder(Conteudo.class)
 		.from(Conteudo.class)
 		.joinFetch("conteudo.canal")
 		.leftOuterJoinFetch("conteudo.subcanal")
 		.leftOuterJoinFetch("conteudo.imagemChamada")
 		.leftOuterJoinFetch("conteudo.imagemChamada.arquivo")
 		.where("conteudo.canal = ?", home.getCanal());
 		
 		if (home.getSubcanal() != null)
 			query.where("conteudo.subcanal = ?", home.getSubcanal());
 		
 		query.orderBy("conteudo.idconteudo desc").setMaxResults(home.getNumeroChamadas());
 
 		return query.list(); 
 	}
 	
 	
 }
 


conteudoEntrada.jsp
Code:
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 
 <t:entrada>
 	<t:janelaEntrada>
 		<t:tabelaEntrada>
 			<t:property name="idconteudo"/>
 			<c:if test="${conteudo.idconteudo != null}">
 				<t:property name="dataCadastro" readonly="readonly" />
 			</c:if>
 			<n:comboReloadGroup useAjax="true">
 		        <t:property name="canal"/>
 		        <t:property name="subcanal"/>
 		    </n:comboReloadGroup> 
 			<t:property name="titulo"/>
 			<t:property name="subtitulo"/>
 			<t:property rows="12" cols="60" name="texto"/>
 			<t:property name="tituloChamada"/>
 			<t:property name="textoChamada" rows="10" cols="60"/>
 			<t:property name="autor"/>
 			<t:property name="imagem" selectOnePath="/modulo/crud/Imagem"/>
 			<t:property name="imagem2" selectOnePath="/modulo/crud/Imagem"/>
 			<t:property label="Imagem da Chamada" name="imagemChamada" selectOnePath="/modulo/crud/Imagem"/>
 		</t:tabelaEntrada>
 	</t:janelaEntrada>
 </t:entrada>
 


conteudoListagem
Code:
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 
 <t:listagem>
 	<t:janelaFiltro>
      	<t:tabelaFiltro>
      		<t:property name="titulo"/>
  			<n:comboReloadGroup useAjax="true">
  				<t:property name="canal" label="Canal:"/>
  				<t:property name="subcanal" label="Subcanal:"/>
  			</n:comboReloadGroup>
  			<t:property name="autor"/>
  		</t:tabelaFiltro>
      </t:janelaFiltro>
 	
 	<t:janelaResultados>
 		<t:tabelaResultados>
 			<t:property name="idconteudo"/>
 			<t:property name="titulo"/>
 			<t:property name="subtitulo"/>
 			<t:property name="ultimoCanal"/>
 		</t:tabelaResultados>
 	</t:janelaResultados>
 </t:listagem>
 


Talvez aqui seja suficiente se vc colocar uns valores no banco para suprir as necessidades da tela... Qualquer coisa me fala, e valeu mesmo pela ajuda...

Só falto isso e o controle de acesso para terminar um projeto que estou fazendo aqui.

abraços
Vou postar os arquivos que acho necessario para fazer o teste... Caso precise de mais alguma coisa me diga que vou postando.

HomeController
Code:
 package org.neo.exemplo.controller;
 
 import java.util.List;
 
 import org.neo.exemplo.bean.Chamada;
 import org.neo.exemplo.bean.Home;
 import org.neo.exemplo.bean.TipoPublicacao;
 import org.neo.exemplo.service.CanalService;
 import org.neo.exemplo.service.HomeService;
 import org.neo.exemplo.service.SubcanalService;
 import org.springframework.web.servlet.ModelAndView;
 
 import br.com.linkcom.neo.controller.Action;
 import br.com.linkcom.neo.controller.Controller;
 import br.com.linkcom.neo.controller.DefaultAction;
 import br.com.linkcom.neo.controller.MultiActionController;
 import br.com.linkcom.neo.core.web.WebRequestContext;
 
 @Controller(path="/modulo/PublicarHome")
 public class HomeController extends MultiActionController {
 	HomeService service;
 	CanalService canalService;
 	SubcanalService subcanalService;
 			
 	public CanalService getCanalService() {
 		return canalService;
 	}
 	public SubcanalService getSubcanalService() {
 		return subcanalService;
 	}
 	public void setCanalService(CanalService canalService) {
 		this.canalService = canalService;
 	}
 	public void setSubcanalService(SubcanalService subcanalService) {
 		this.subcanalService = subcanalService;
 	}
 	public HomeService getService() {
 		return service;
 	}
 	public void setService(HomeService service) {
 		this.service = service;
 	}
 	
 	@DefaultAction
 	public ModelAndView escolherCanal(WebRequestContext request,Chamada chamada){
 		List<Home> lHomeFormatadas = service.findAllFormatadas();
 		request.setAttribute("lHome", lHomeFormatadas);
 		
 		request.setAttribute("chamada", chamada);
 		
 		return new ModelAndView("homeSelecionar");
 	}
 	
 	@Action("definirPublicacao")
 	public ModelAndView definirConteudo(WebRequestContext request,Chamada chamada){
 		Home home = service.load(chamada.getHome());
 		request.setAttribute("home", home);
 		request.setAttribute("tipoPublicacao",new TipoPublicacao());
 		return new ModelAndView("definirConteudoHome");
 	}
 	
 	@Action("salvar")
 	public ModelAndView salvar(WebRequestContext request,Home home){
 		System.out.print("id="+home.getIdhome());
 		service.saveOrUpdate(home);
 		service.geraXml(home);
 		//request.setAttribute("home", home);
 		return new ModelAndView("sucesso");
 	}
 }
 


homeSelecionar.jsp

Code:
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 
 <t:tela titulo="Definir Home">
   		<n:bean name="chamada">
   			<t:propertyConfig mode="input" renderAs="double" showLabel="true" >
   			<n:panelGrid columns="4">
  	 		        <t:property label="home:" name="home" mode="input" labelStyle="font-size:9pt;font-weight:bold" itens="${lHome}"/>	  		        
 					<n:submit action="definirPublicacao" >publicar</n:submit>
  	 		</n:panelGrid>
   		    </t:propertyConfig>
    	    </n:bean>
   </t:tela> 
 


definirConteudoHome ( onde está ocorrendo o erro)

Code:
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 
 <t:tela titulo="Definir Home">
 	<n:bean name="home">
 		<t:property name="canal.idcanal" mode="input" type="hidden"/>	  		        
 	    <t:property name="subcanal.idsubcanal" mode="input" type="hidden"/>
 	    <t:property name="idhome" mode="input" type="hidden" />
 	    <t:property name="exibicao" mode="input" type="hidden" />
 	    <t:property name="titulo" mode="input" readonly="readonly" />
  		<n:panelGrid columns="3">
 	   	    <c:forEach var="chamadas" items="${home.chamadas}" varStatus="status">
 	   	    	<t:property name="chamadas[${status.index}].tipochamada.idtipochamada" mode="input" type="hidden"/>	  		        
 	   	    	<n:panel ><a style="font-size:9pt;font-weight:bold">${chamadas.tipochamada.tipochamada }:</a></n:panel>
 	   	    	<c:if test="${chamadas.tipochamada.tipoPublicacao eq tipoPublicacao.conteudo}">
 					<t:property label="conteudo:" name="chamadas[${status.index}].conteudo" mode="input" labelStyle="font-size:9pt;font-weight:bold" selectOnePath="/modulo/crud/Conteudo"/>
 				</c:if>	
 				<c:if test="${chamadas.tipochamada.tipoPublicacao eq tipoPublicacao.galeria}">
 					<t:property label="galeria:" name="chamadas[${status.index}].galeria" mode="input" labelStyle="font-size:9pt;font-weight:bold" selectOnePath="/modulo/crud/Galeria"/>
 				</c:if>	
 			</c:forEach> 
  		</n:panelGrid>
  		<n:panel colspan="2">
 	    	<n:submit action="salvar">salvar</n:submit>
 		</n:panel>
  	</n:bean>
 </t:tela>
 


Conteudo:
Code:
 package org.neo.exemplo.bean;
 
 import java.io.File;
 import java.util.Date;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Transient;
 
 import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
 import br.com.linkcom.neo.validation.annotation.MaxLength;
 import br.com.linkcom.neo.validation.annotation.Required;
 
 @Entity
 @SequenceGenerator(name="conteudo_idconteudo_seq", sequenceName="conteudo_idconteudo_seq")
 public class Conteudo {
 	public static String pathRaiz ="C:\\Desenv\\projetos\\neo\\web\\xml";
 	private static String pastaXml = "conteudo";
 	private Long idconteudo;
 	private String titulo;
 	private String subtitulo;
 	private String texto;
 	private String tituloChamada;
 	private String textoChamada;
 	private Date dataCadastro;
 	private Date dataAlteracao;
 	private Autor autor;
 	private Imagem imagem;
 	private Imagem imagem2;
 	private Imagem imagemChamada;
 	private Canal canal;
 	private Subcanal subcanal;
 	
 	@JoinColumn(name="idimagem_chamada", referencedColumnName="idimagem")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Imagem getImagemChamada() {
 		return imagemChamada;
 	}
 	
 	@JoinColumn(name="idimagem2", referencedColumnName="idimagem")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Imagem getImagem2() {
 		return imagem2;
 	}
 	
 	@JoinColumn(name="idcanal")
 	@ManyToOne(fetch=FetchType.LAZY)
 	@Required
 	public Canal getCanal() {
 		return canal;
 	}
 
 	@JoinColumn(name="idsubcanal")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Subcanal getSubcanal() {
 		return subcanal;
 	}
 	
 	@Required
 	@JoinColumn(name="idautor")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Autor getAutor() {
 		return autor;
 	}
 	
 	@Column(name="dt_alteracao")
 	public Date getDataAlteracao() {
 		return dataAlteracao;
 	}
 	
 	@Column(name="dt_cadastro")
 	public Date getDataCadastro() {
 		return dataCadastro;
 	}
 	
 	@Id
 	@GeneratedValue(strategy=GenerationType.AUTO, generator="conteudo_idconteudo_seq")
 	public Long getIdconteudo() {
 		return idconteudo;
 	}
 	@JoinColumn(name="idimagem")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Imagem getImagem() {
 		return imagem;
 	}
 	
 	@MaxLength(50)
 	public String getSubtitulo() {
 		return subtitulo;
 	}
 	
 	@Required
 	public String getTexto() {
 		return texto;
 	}
 	
 	@MaxLength(200)
 	@Required
 	@Column(name="texto_chamada")
 	public String getTextoChamada() {
 		return textoChamada;
 	}
 	
 	@Required
 	@MaxLength(50)
 	public String getTitulo() {
 		return titulo;
 	}
 	
 	@MaxLength(50)
 	@DescriptionProperty
 	@Required
 	@Column(name="titulo_chamada")
 	public String getTituloChamada() {
 		return tituloChamada;
 	}
 	
 	@Transient
 	public String getPathXml(){
 		String path = pathRaiz;
 		if (this != null){
 			path += File.separator + getCanal().getCodigo();
 			if (getSubcanal() != null)
 				path += File.separator + getSubcanal().getCodigo();
 		}
 		path += File.separator + pastaXml;
 		return path;
 	}
 	
 	@Transient
 	public String getNameXml(){
 		return idconteudo + ".xml"; 
 	}
 	
 	@Transient
 	public String getUrlChamada(){
 		String url = "";
 		if (this != null){
 			url += File.separator + getCanal().getCodigo();
 			if (getSubcanal() != null)
 				url += File.separator + getSubcanal().getCodigo();
 		}
 		url +=  File.separator + "conteudo.jsp?xml=" + pastaXml + File.separator + getNameXml();
 		return url;
 	}
 	
 	@Transient
 	public String getUltimoCanal(){
 		if (getSubcanal() != null)
 			return getSubcanal().getSubcanal();
 		else
 			return getCanal().getCanal();
 	}
 	
 	public void setAutor(Autor autor) {
 		this.autor = autor;
 	}
 	public void setDataAlteracao(Date dataAlteracao) {
 		this.dataAlteracao = dataAlteracao;
 	}
 	public void setDataCadastro(Date dataCadastro) {
 		this.dataCadastro = dataCadastro;
 	}
 	public void setIdconteudo(Long idconteudo) {
 		this.idconteudo = idconteudo;
 	}
 	public void setImagem(Imagem imagem) {
 		this.imagem = imagem;
 	}
 	public void setSubtitulo(String subtitulo) {
 		this.subtitulo = subtitulo;
 	}
 	public void setTexto(String texto) {
 		this.texto = texto;
 	}
 	public void setTextoChamada(String textoChamada) {
 		this.textoChamada = textoChamada;
 	}
 	public void setTitulo(String titulo) {
 		this.titulo = titulo;
 	}
 	public void setTituloChamada(String tituloChamada) {
 		this.tituloChamada = tituloChamada;
 	}
 
 	public void setCanal(Canal canal) {
 		this.canal = canal;
 	}
 
 	public void setSubcanal(Subcanal subcanal) {
 		this.subcanal = subcanal;
 	}
 	
 	public void setImagem2(Imagem imagem2) {
 		this.imagem2 = imagem2;
 	}
 	
 	public void setImagemChamada(Imagem imagemChamada) {
 		this.imagemChamada = imagemChamada;
 	}
 
 }
 


Home:
Code:
 package org.neo.exemplo.bean;
 
 import java.io.File;
 import java.util.List;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Transient;
 
 import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
 import br.com.linkcom.neo.validation.annotation.MaxLength;
 import br.com.linkcom.neo.validation.annotation.Required;
 
 @Entity
 @SequenceGenerator(name="home_idhome_seq", sequenceName="home_idhome_seq")
 public class Home {
 	//constantes
 	public static String pathRaiz ="C:\\Desenv\\projetos\\neo\\web\\xml";
 	public static String EXIBICAO_LISTA_DESC = "lista de chamadas";
 	public static String EXIBICAO_LISTA_COD = "l";
 	public static String EXIBICAO_FORMATADA_DESC = "home formatada";
 	public static String EXIBICAO_FORMATADA_COD = "f";
 	
 	//atributos
 	private Long idhome;
 	private Canal canal;
 	private Subcanal subcanal;
 	private Integer numeroChamadas;
 	private List<Chamada> chamadas;
 	private String exibicao;
 	private String titulo;
 	
 	@MaxLength(50)
 	@DescriptionProperty
 	@Required
 	public String getTitulo() {
 		return titulo;
 	}
 	public void setTitulo(String titulo) {
 		this.titulo = titulo;
 	}
 	@OneToMany(mappedBy="home")
 	public List<Chamada> getChamadas() {
 		return chamadas;
 	}
 	@Column(name="numero_chamadas")
 	public Integer getNumeroChamadas() {
 		return numeroChamadas;
 	}
 
 	@JoinColumn(name="idcanal")
 	@ManyToOne(fetch = FetchType.LAZY)
 	public Canal getCanal() {
 		return canal;
 	}
 	
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO, generator="home_idhome_seq")
 	public Long getIdhome() {
 		return idhome;
 	}
 	
 	@JoinColumn(name="idsubcanal")
 	@ManyToOne
 	public Subcanal getSubcanal() {
 		return subcanal;
 	}
 	
 	@MaxLength(1)
 	public String getExibicao() {
 		return exibicao;
 	}
 	
 	@Transient
 	public String getPathXml(){
 		String path = pathRaiz;
 		if (this != null){
 			path += File.separator + getCanal().getCodigo();
 			if (getSubcanal() != null)
 				path += File.separator + getSubcanal().getCodigo();
 		}
 		return path;
 	}
 	
 	public void setCanal(Canal canal) {
 		this.canal = canal;
 	}
 	
 	public void setIdhome(Long idhome) {
 		this.idhome = idhome;
 	}
 	public void setSubcanal(Subcanal subcanal) {
 		this.subcanal = subcanal;
 	}
 	public void setChamadas(List<Chamada> chamadas) {
 		this.chamadas = chamadas;
 	}
 	public void setNumeroChamadas(Integer numeroChamadas) {
 		this.numeroChamadas = numeroChamadas;
 	}
 	public void setExibicao(String exibicao) {
 		this.exibicao = exibicao;
 	}
 }
 


Chamada:
Code:
 package org.neo.exemplo.bean;
 
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.SequenceGenerator;
 
 @Entity
 @SequenceGenerator(name="chamada_idchamada_seq", sequenceName="chamada_idchamada_seq")
 public class Chamada {
 	private Long idchamada;
 	private Conteudo conteudo;
 	private Galeria galeria;
 	private Home home;
 	private Tipochamada tipochamada;
 	
 	public Chamada(){
 		
 	}
 	
 	public Chamada(Home h, Conteudo c, Galeria g, Tipochamada t){
 		if (h != null)
 			setHome(h);
 		if (c != null)
 			setConteudo(c);
 		if (g != null)
 			setGaleria(g);
 		if (t != null)
 			setTipochamada(t);
 	}
 	
 	
 	@JoinColumn(name="idgaleria",nullable=true)
 	@ManyToOne()
 	public Galeria getGaleria() {
 		return galeria;
 	}
 
 	@JoinColumn(name="idconteudo",nullable=true)
 	@ManyToOne()
 	public Conteudo getConteudo() {
 		return conteudo;
 	}
 	
 	@JoinColumn(name="idhome")
 	@ManyToOne(fetch=FetchType.LAZY)
 	public Home getHome() {
 		return home;
 	}
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO, generator="chamada_idchamada_seq")
 	public Long getIdchamada() {
 		return idchamada;
 	}
 	
 	@JoinColumn(name="idtipochamada")
 	@ManyToOne
 	public Tipochamada getTipochamada() {
 		return tipochamada;
 	}
 	
 	public void setConteudo(Conteudo conteudo) {
 		this.conteudo = conteudo;
 	}
 	public void setHome(Home home) {
 		this.home = home;
 	}
 	public void setIdchamada(Long idchamada) {
 		this.idchamada = idchamada;
 	}
 	public void setTipochamada(Tipochamada tipochamada) {
 		this.tipochamada = tipochamada;
 	}
 	public void setGaleria(Galeria galeria) {
 		this.galeria = galeria;
 	}
 
 	
 }
 


vou mandar o resto no post seguinte.
Vou ver a melhor forma de postar aqui então.
E só dá pau na hora de limpar os campos... tanto de galeria como de conteudo. Setar funciona.
Posso mandar sim...
Só preciso do seu email... basta os .java e jsps neh?
Eu zipo e mando sim.
Rogel,

Num caso desse de master detail... Eu queria ter um combo na <t:tabelaEntrada> que qnd um opção fosse selecionada apareceria o <t:detalhe> e qnd a outra fosse selecionada ele sumiria...

Tem algum modo simples para fazer isso?

abraços
Não alterei nada relacionado a javascript no projeto...então assumo que devo estar usando a biblioteca padrão do neo.

Fora que nas outras telas que uso o selectonepath funciona normalmente. Acho que o erro é relacionado ao nome do campo esta no formato 'chamadas[i].conteudo'... mas n sei pq;

Eu mandei exibir o codigo fonte, mas n consegui visualizar erro no local...
segue aqui o trecho provavel onde da problema:

Code:
 <input type="hidden" name="chamadas[0].tipochamada.idtipochamada" value="3"  /><span id="chamadas[0].tipochamada.idtipochamada_value"></span>
 				
 				
 			</td>
 <td ><a style="font-size:9pt;font-weight:bold">Blá Blá Blá:</a></td>
 <td  colspan='1'>
 				
 					<!-- Valor selecionado org.neo.exemplo.bean.Conteudo[idconteudo=5] -->
 <input type="text" name="chamadas[0].conteudo_label" onchange="" readonly="true" value="Contaminação Alimentar"  />
 <input type="hidden" name="chamadas[0].conteudo" value="org.neo.exemplo.bean.Conteudo[idconteudo=5,tituloChamada=Contaminação Alimentar]" />
 <button id="chamadas[0].conteudo_btn" name="chamadas[0].conteudo_btn" type="button" onclick="var c = new selecionarCallbackObject(form['chamadas[0].conteudo'], form['chamadas[0].conteudo_label'], 'org.neo.exemplo.bean.Conteudo', form['chamadas[0].conteudo_btn'], form['chamadas[0].conteudo_btnUnselect']); var win = open('/neo/SELECIONARCADASTRAR/modulo/crud/Conteudo','filha77037','width=' + (window.document.body.clientWidth) + ', height=' + (window.document.body.clientHeight) + ', top=50, left=0, resizable, scrollbars'); win.selecionarCallback = c; " style='display:none'>Selecionar</button>
 <button id="chamadas[0].conteudo_btnUnselect" name="chamadas[0].conteudo_btnUnselect" type="button" onclick="chamadas[0].conteudo_label.value = ''; chamadas[0].conteudo.value = '<null>'; document.getElementById('chamadas[0].conteudo_btn').style.display=''; document.getElementById('chamadas[0].conteudo_btnUnselect').style.display='none'" style=''>Limpar</button>
 


valeu pela ajuda.

abraços
Eu tenho uma tela jsp com o codigo abaixo

jsp:
Code:
 <c:forEach var="chamadas" items="${home.chamadas}" varStatus="status">
 	   	    	<t:property name="chamadas[${status.index}].tipochamada.idtipochamada" mode="input" type="hidden"/>	  		        
 	   	    	<n:panel ><a style="font-size:9pt;font-weight:bold">${chamadas.tipochamada.tipochamada }:</a></n:panel>
 	   	    	<c:if test="${chamadas.tipochamada.tipoPublicacao eq tipoPublicacao.conteudo}">
 					<t:property label="conteudo:" name="chamadas[${status.index}].conteudo" mode="input" labelStyle="font-size:9pt;font-weight:bold" selectOnePath="/modulo/crud/Conteudo"/>
 				</c:if>	
 				<c:if test="${chamadas.tipochamada.tipoPublicacao eq tipoPublicacao.galeria}">
 					<t:property label="galeria:" name="chamadas[${status.index}].galeria" mode="input" labelStyle="font-size:9pt;font-weight:bold" selectOnePath="/modulo/crud/Galeria"/>
 				</c:if>	
 			</c:forEach> 
 


Antes eu utilizava o select normal e não tinha nenhum problema... Agora eu alterei e coloquei o selectonepath... A parte de selecionar os conteudos e galeria funciona tranquilamente, porém quando eu vou tentar limpar dá um erro de javascript ('chamadas' não está definido).

O que poderia ser isso?

abraços e obrigado pela ajuda.
Consegui, fazer hoje mas estava sem net então posto a solução amanhã;

Só ficou faltando a lista aparecer vazia de inicio, qnd n tem nenhum filtro selecionado.

abraços
Oi de novo.

Eu fiz uma tentativa que ficou parecido com o que eu quero, só não estou conseguindo pegar o valor do filtro.

o jsp da view:
Code:
 <t:listagem showNewLink="false">
 
 	<t:janelaFiltro>
         <t:tabelaFiltro showSubmit="false" columns="2">
             <t:property name="lista" colspan="2"/>
             <n:submit action="${TabelaFiltroTag.submitAction}" validate="${TabelaFiltroTag.validateForm}" url="${TabelaFiltroTag.submitUrl}">exibir itens</n:submit>
             <n:submit action="criar">novo item</n:submit>
         </t:tabelaFiltro>
     </t:janelaFiltro>
     
 	<t:janelaResultados>
 		<t:tabelaResultados>
 			<t:property name="idItemLista" label="id"/>
 			<t:property name="titulo"/>
 			<t:property name="lista"/>
 			<t:property name="posicao"/>
 		</t:tabelaResultados>
 	</t:janelaResultados>
 	
 </t:listagem>
 


Como pode ver adicionei um botão novo item no filtro, assim só se pode criar um novo item com o filtro selecionado (campo required). Até ai ok.
O problema vai na hora de pegar o campo e passar para a tela de entrada (criar)

segue meu crud:
Code:
 @Override
 	protected void entrada(WebRequestContext request, ItemLista item) throws Exception {
 		if (item.getIdItemLista() == null) {
 			System.out.println("----filtro----");
 			Lista filtro = (Lista) request.getAttribute("lista");
 			item.setLista(filtro);
 		}
 		
 		super.entrada(request, item);
 	}
 
 	@Override
 	public ModelAndView doCriar(WebRequestContext request, ItemLista item) throws CrudException {
 		Lista filtro = (Lista) request.getAttribute("lista");
 		item.setLista(filtro);
 		return super.doCriar(request, item);
 	}
 


Tentei um metodo e depois o outro... Mas nenhum deles consegue pegar a lista... vem sempre null e ai não consigo passar para a outra tela.

Como poderia fazer isso?

Valeu pela ajuda e abraços;
 
Perfil de robmsjr -> Mensagens enviadas por robmsjr [88] Ir para a página: Anterior  1, 2, 3, 4, 5, 6 Próximo 
Ir para:   
Powered by JForum 2.1.7 © JForum Team