Bom dia, eu estou em um projeto a parte em JSF rodando no tomcat, e gostaria de saber como disponibilizo os dados dos vendedores em XML, tentei seguir o basico da aula 1 mas nao deu certo.
Meu bean
@Named
@ViewScoped
public class VendedorBean implements Serializable {
private static final long serialversionUID = 1L;
private Vendedor vendedor = new Vendedor();
private Integer CidadeId;
private Integer vendedorId;
private List<Vendedor> vendedores;
@Inject
private CidadeDao CidadeDao;
@Inject
private VendedorDao dao;
private UsuarioDAO usuarioDAO = new UsuarioDAO();
public void carregaPelaId() {
this.vendedor = dao.buscaPorId(this.vendedorId);
}
public Integer getvendedorId() {
return vendedorId;
}
public void setVendedorId(Integer vendedorId) {
this.vendedorId = vendedorId;
}
public void setVendedor(Vendedor vendedor) {
this.vendedor = vendedor;
}
public Integer getCidadeId() {
return CidadeId;
}
public void setCidadeId(Integer CidadeId) {
this.CidadeId = CidadeId;
}
public Vendedor getvendedor() {
return vendedor;
}
public List<Cidade> getCidades() {
return CidadeDao.listaTodos();
}
public List<Vendedor> getvendedores() {
if (this.vendedores == null) {
this.vendedores = dao.listaTodos();
}
return vendedores;
}
@Transacional
public void gravar() {
System.out.println("Gravando vendedor " + this.vendedor.getNome());
if (this.vendedor.getId() == null) {
if(!usuarioDAO.existeUsuario(vendedor.getCpf())) {
dao.adiciona(this.vendedor);
usuarioDAO.salvaUsuario(vendedor.getCpf(), vendedor.getSenha());
this.vendedores = dao.listaTodos();
this.vendedor = new Vendedor();
FacesContext.getCurrentInstance().addMessage("Vendedor",
new FacesMessage("vendedor Adicionado com sucesso"));
}else {
FacesContext.getCurrentInstance().addMessage("Cpf",
new FacesMessage(FacesMessage.SEVERITY_ERROR, "Ja existe um vendedor com esse CPF", "CPF Invalido"));
}
} else {
usuarioDAO.atualiza(this.vendedor, vendedor.getCpf(), vendedor.getSenha());
dao.atualiza(this.vendedor);
this.vendedor = new Vendedor();
FacesContext.getCurrentInstance().addMessage("Vendedor",
new FacesMessage("Vendedor Adicionado com sucesso"));
}
}
@Transacional
public void remover(Vendedor l) {
String nome = l.getNome();
usuarioDAO.remove(l);
dao.remove(l);
this.vendedores = this.dao.listaTodos();
FacesContext.getCurrentInstance().addMessage("Cidade",
new FacesMessage("vendedor "+nome+" removido com sucesso"));
}
public void carregar(Vendedor l) {
this.vendedor = dao.buscaPorId(l.getId());
}
public void buscaCep() {
String cep = vendedor.getCep().replaceAll("-", "");
Client client = ClientBuilder.newClient();
WebTarget wr = client.target("https://viacep.com.br/ws/");
String conteudo = wr.path(cep+"/json/").request().get(String.class);
System.out.println(conteudo);
Gson gson = new Gson();
Cep teste = gson.fromJson(conteudo,new TypeToken<Cep>(){}.getType());
try {
if(teste.getLogradouro().isEmpty());
else {
this.vendedor.setBairro(teste.getBairro());
this.vendedor.setRua(teste.getLogradouro());
}
}catch(Exception e) {
FacesContext.getCurrentInstance().addMessage("Cep",
new FacesMessage(FacesMessage.SEVERITY_ERROR, "Cep inválido", "Cep inválido"));
}
}
@Path("endereco")
public class CarrinhoResource {
@GET
@Produces(MediaType.APPLICATION_XML)
public String busca() {
Vendedor vendedor = dao.buscaPorId(3);
System.out.println(vendedor.getCep());
return vendedor.toXML();
}
}
}
Gostaria de saber, resumidamente, o que preciso pra realizar esse processo