Duvidas Webservice SOAP

Olá Pessoal,

Estou com uma pequena dúvida com relação webservice soap externo, estou consumindo webservice de cliente e estou retornando resultado do webservice em json.

ConsultarNfseEnvio consultarNfseEnvio = new ConsultarNfseEnvio();
consultarNfseEnvio.setNumeroNfse(numeroNfse);
consultarNfseEnvio.setPrestador(prestador);
consultarNfseEnvio.setTomador(tomador);

ConsultarNfseResposta obj = cliente.consultarNfse(consultarNfseEnvio);
return obj;
@GetMapping("/prefeituracuritiba")
public ConsultarNfseResposta listarPrefeituraTeste() throws SQLException, AxisFault, IOException, ServiceException {
  return service.ConsultarNfseTesteManual();
}

Simplementente ele retorno perfeitamente o resultado do webservice.

Preciso ConsultarNfseResposta obj = cliente.consultarNfse(consultarNfseEnvio);

preciso que seja enviado para meu banco de dados interno o resultado do meu metodo obj.

Eu crei uma classe simples para obter simplemente um metodo exemplo: numerodanota usando entity e criando um id para eu armazenar no meu proprio bancos as notas fiscais.

Segundo passo: Criei uma interface repository para salvar no meu banco de dados. simples

@Repository
public interface ConsultaNfseCuritibaRepository extends JpaRepository<ConsultaNfseCuritiba, UnsignedLong> {

}

tentei executar dentro do meu service usando os parametros

@Autowired
ConsultaNfseCuritibaRepository repo;

repo.save(obj);

observação ele deu erro no repo.save(obj); foi alterado para:

@Repository
public interface ConsultaNfseCuritibaRepository extends JpaRepository<ConsultaNfseCuritiba, UnsignedLong> {
  void save(ConsultarNfseResposta obj);
}

porém quando executar no postman retorna o erro e nao insere no meu banco de dados.

Erro:

org.springframework.beans.NotReadablePropertyException: Invalid property 'id' of bean class [br.com.e_governeapps2Curitiba.www.ConsultarNfseResposta]: Could not find field for property during fallback

alguem poderia me dar um help como posso arumar erro.

Como está a classe ConsultaNfseCuritiba? Ela é uma entidade JPA?

Sim, essa classe eu criei usando @entity

Posta ela ai.

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.axis.types.UnsignedLong;
@Entity
@Table(name = "TB_CONSULTANFSECURITIBA")
public class ConsultaNfseCuritiba implements Serializable{
	
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Integer id;
	
	private UnsignedLong numero;

	public ConsultaNfseCuritiba() {
		
	}
	
	public ConsultaNfseCuritiba(Integer id, UnsignedLong numero) {
		super();
		this.id = id;
		this.numero = numero;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public UnsignedLong getNumero() {
		return numero;
	}

	public void setNumero(UnsignedLong numero) {
		this.numero = numero;
	}

Tu criou um repositorio usando a entidade ConsultaNfseCuritiba, porém está tentando salvar um ConsultarNfseResposta. Está bem estranho isso. A classe ConsultarNfseResposta herda de ConsultaNfseCuritiba?

Lucas

A classe ConsultarNfseResposta é gerado do stub a classe que preciso que apareça o resultado do webservice do cliente. porem eu preciso criar uma classe propria no meu banco de dados para inserir depois um job automatico.

estou analisando aqui na verdade e que :
ConsultarNfseResposta obj = cliente.consultarNfse(consultarNfseEnvio);
estou passando direto preciso na verdade.

Nao ta transformando os dados em ConsultarNfeCuritiba

Como posso transformar o dados do obj para consultaNfse?
outra pergunta no retorno do json como posso escolher o campo exemplo preciso para testar somente, se conseguir vou preencher os campos que preciso.
{
“numerodanota”: 1234
}

Crie a instância de ConsultarNfeCuritiba e vá setando os valores que vc precisa.

A pergunta ficou meio confusa, mas se entendi direito, vc quer uma forma de retornar apenas alguns dados no retorno da requisição rest. Se for isso, dá uma lida nesse post: Editar retorno JSON