package ExemplosSearchDocumentService; import javax.xml.datatype.DatatypeFactory; import javax.xml.datatype.XMLGregorianCalendar; import javax.xml.ws.BindingProvider; import com.datasul.technology.webdesk.dm.ws.SearchDocumentService; import com.datasul.technology.webdesk.dm.ws.SearchDocumentServiceService; import com.datasul.technology.webdesk.dm.ws.SearchResultDtoArray; /** * Classe que utiliza todos os métodos de SearchDocumentService. * Com essa classe, pode-se buscar documentos utilizando a busca simples e avançada. * No método setParameters, pode-se setar algumas das variáveis que são mais utilizadas como parâmetros nos métodos desta classe. * No método changeMethod, pode-se escolher qual método será executado. */ public class SearchDocumentServiceClient { // Variáveis. String loginColaborador, senhaColaborador, matriculaColaborador, conteudoBusca; int codigoEmpresa, numeroDocumentPai; boolean buscaTodosTiposDocumentos, buscaPastas, buscaDocumentos, buscaFicharios, buscaFichas, buscaDocumentosExternos; // Variáveis de data. XMLGregorianCalendar startDate, finalDate; // Array SearchResultDtoArray searchResultDtoArray = new SearchResultDtoArray(); // Instancia SearchDocumentServiceService. SearchDocumentServiceService searchDocumentService = new SearchDocumentServiceService(); SearchDocumentService service = searchDocumentService.getSearchDocumentServicePort(); // Inicia execução da classe. public static void main (String args[]) { System.out.println("\nClasse SearchDocumentServiceClass"); // Instancia classe GroupServiceClass. SearchDocumentServiceClient sdsc = new SearchDocumentServiceClient(); // Configura acesso ao WebServices. BindingProvider bp = (BindingProvider) sdsc.service; bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://localhost:8080/webdesk/SearchDocumentService"); try { // Chama método que configura os valores das variáveis. sdsc.setParameters(); // Chama método que é responsável por executar os métodos da classe. sdsc.changeMethod(); } catch (Exception e) { e.printStackTrace(); } } /** * Configura parâmetros. * Nesse método pode-se setar algumas das variáveis que são mais utilizadas como parâmetros nos métodos desta classe. */ public void setParameters() throws Exception { this.loginColaborador = "adm"; this.senhaColaborador = "admin"; this.codigoEmpresa = 1; this.matriculaColaborador = "adm"; this.conteudoBusca = "Adobe"; this.numeroDocumentPai = 44049; this.buscaTodosTiposDocumentos = true; this.buscaPastas = true; this.buscaDocumentos = true; this.buscaFicharios = true; this.buscaFichas = true; this.buscaDocumentosExternos = true; // Cria data inicial. this.startDate = DatatypeFactory.newInstance().newXMLGregorianCalendar(); this.startDate.setYear(2010); this.startDate.setMonth(05); this.startDate.setDay(30); this.startDate.setHour(0); this.startDate.setMinute(0); this.startDate.setSecond(0); // Cria data final. this.finalDate = DatatypeFactory.newInstance().newXMLGregorianCalendar(); this.finalDate.setYear(2010); this.finalDate.setMonth(07); this.finalDate.setDay(05); this.finalDate.setHour(0); this.finalDate.setMinute(0); this.finalDate.setSecond(0); } /** * Escolhe método. * Nesse método, pode-se escolher qual método da classe será executado. */ public void changeMethod() throws Exception { // Chama método searchDocuments. //this.searchDocuments(); // Chama método advancedSearchDocuments. //this.advancedSearchDocuments(); } /** * Utiliza busca simples. * * Método: searchDocuments. * * Parâmetros: * - Login do colaborador; * - Senha do colaborador; * - Código da empresa; * - Matrícula do colaborador; * - Conteúdo da busca. */ public void searchDocuments() throws Exception { System.out.println("\nMétodo searchDocuments\n"); // Utiliza busca simples. this.searchResultDtoArray = service.searchDocuments(this.loginColaborador, this.senhaColaborador, this.codigoEmpresa, this.matriculaColaborador, this.conteudoBusca); // Mostra resultado. if (!this.searchResultDtoArray.getItem().isEmpty()) { for (int i = 0; i < this.searchResultDtoArray.getItem().size(); i++) { System.out.println("Código do documento: " + this.searchResultDtoArray.getItem().get(i).getDocumentId()); System.out.println("Nome do documento: " + this.searchResultDtoArray.getItem().get(i).getDocumentDescription()); System.out.println(""); } } else { System.out.println("Nenhum documento foi encontrado!"); } } /** * Utiliza busca avançada. * * Método: advancedSearchDocuments. * * Parâmetros: * - Login do colaborador; * - Senha do colaborador; * - Código da empresa; * - Matrícula do colaborador; * - Conteúdo da busca; * - Busca todos os tipos de documentos (true/false); * - Busca pastas (true/false); * - Busca documentos (true/false); * - Busca fichários (true/false); * - Busca fichas (true/false); * - Busca documentos externos (true/false); * - Número do documento pai; * - Data inicial; * - Data final. */ public void advancedSearchDocuments() throws Exception { System.out.println("\nMétodo advancedSearchDocuments\n"); // Utiliza busca avançada. this.searchResultDtoArray = service.advancedSearchDocuments(this.loginColaborador, this.senhaColaborador, this.codigoEmpresa, this.matriculaColaborador, this.conteudoBusca, this.buscaTodosTiposDocumentos, this.buscaPastas, this.buscaDocumentos, this.buscaFicharios, this.buscaFichas, this.buscaDocumentosExternos, this.numeroDocumentPai, this.startDate, this.finalDate); // Mostra resultado. if (!this.searchResultDtoArray.getItem().isEmpty()) { for (int i = 0; i < this.searchResultDtoArray.getItem().size(); i++) { System.out.println("Código do documento: " + this.searchResultDtoArray.getItem().get(i).getDocumentId()); System.out.println("Nome do documento: " + this.searchResultDtoArray.getItem().get(i).getDocumentDescription()); System.out.println(""); } } else { System.out.println("Nenhum documento foi encontrado!"); } } }