/* * Created on Jun 17, 2004 * * To change the template for this generated file go to * Window>Preferences>Java>Code Generation>Code and Comments */ package pe.gob.sunat.despaduanero.pdjava; import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.*; //weblogic.jar import javax.xml.namespace.QName; //webserviceclient+ssl.jar import javax.xml.rpc.ParameterMode; //axis.jar de apache import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.encoding.XMLType; /** * To change the template for this generated type comment go to * Window>Preferences>Java>Code Generation>Code and Comments */ public class ClienteWebServicesPD { public static void main(String[] args) { try { System.out.println("Iniciando llamda a los WS del Portafolio de Documentos "); enviaArchivoWebService(); enviaArchivoWebService(); enviaArchivoWebService(); enviaArchivoWebService(); } catch(Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static boolean enviaArchivoWebService() { String response = null; boolean ok = true; int i=10; try { String ctipo = "A" ; String ccodigo = "0091"; String cclave = "XXXX"; String caduana = "118"; String cnombre = "C:/ArchivodePrueba.zipp"; FileInputStream fis = new FileInputStream(cnombre); ByteArrayOutputStream baos = new ByteArrayOutputStream(); int c = 0; while((c = fis.read()) != -1){ baos.write(c); } fis.close(); byte[] byteReturn = baos.toByteArray(); baos.close(); byte[] recibeArchivoBytes = new byte[64]; recibeArchivoBytes = byteReturn; String method = "enviaArchivoWebService"; String url = "http://www.aduanet.gob.pe/ws-ad-pd/ws-ad-pd"; Service service = new Service(); Call call = (Call) service.createCall(); QName qnamer = new QName("urn:ws-ad-pd", "ws-ad-pd"); call.setTargetEndpointAddress( new java.net.URL(url) ); call.setOperationName(method); call.addParameter( "toperador", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "operador", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "clave", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "aduana", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "archivoEnvioByte" , XMLType.XSD_BASE64, ParameterMode.IN ); call.addParameter( "nombreArchivo", XMLType.XSD_STRING, ParameterMode.IN ); call.setReturnType(XMLType.XSD_STRING); response = (String) call.invoke(new Object[] {ctipo,ccodigo,cclave,caduana,recibeArchivoBytes,cnombre}); System.out.println("Metodo :"+method+" : "+response); //Se obtendra el nombre del archivo generado 000000518 } catch(Exception e) { ok = false; e.printStackTrace(System.out); }finally{ } return ok ; } public static boolean obtieneArchivoRpta() { String response = null; boolean ok = true; try { String ctipo = "A" ; String ccodigo = "0091"; String cclave = "XXXX"; String caduana = "118"; String cnombre = "000000518"; String ano = "2005"; byte[] recibeArchivoBytes = null; String method = "obtieneArchivoRpta"; String url = "http://www.aduanet.gob.pe/ws-ad-pd/ws-ad-pd"; Service service = new Service(); Call call = (Call) service.createCall(); QName qnamer = new QName("urn:ws-ad-pd", "ws-ad-pd"); call.setTargetEndpointAddress( new java.net.URL(url) ); call.setOperationName(method); call.addParameter( "toperador", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "operador", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "clave", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "aduana", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "ano", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "NroEnvioGenerado", XMLType.XSD_STRING, ParameterMode.IN ); call.setReturnType(XMLType.XSD_BASE64); recibeArchivoBytes = (byte[]) call.invoke(new Object[] {ctipo,ccodigo,cclave,caduana,ano,cnombre}); System.out.println("imprime resul WS:"+recibeArchivoBytes); try{ OutputStream out= new FileOutputStream("c:/tmp/rpta"+cnombre+".zip"); out.write(recibeArchivoBytes ); out.close(); }catch (Exception ex){ ok= false; System.out.println( "el error es "+ex); } finally { } } catch(Exception e) { ok= false; e.printStackTrace(System.out); }finally{ } return ok ; } public static boolean verificaDatadoManifiesto() { String response = null; boolean ok = true; try { String aduana = "118"; String anomc = "2005"; String numeromc = " 2959"; String conoembar = "CNSHK03429" ; String viatrans = "1"; String tipomani = "M"; String method = "verificaDatadoManifiesto"; String url = "http://www.aduanet.gob.pe/ws-ad-pd/ws-ad-pd"; Service service = new Service(); Call call = (Call) service.createCall(); QName qnamer = new QName("urn:ws-ad-pd", "ws-ad-pd"); call.setTargetEndpointAddress( new java.net.URL(url) ); call.setOperationName(method); call.addParameter( "aduana", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "anomc", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "numeromc", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "conoembar", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "viatrans", XMLType.XSD_STRING, ParameterMode.IN ); call.addParameter( "tipomani", XMLType.XSD_STRING, ParameterMode.IN ); call.setReturnType(XMLType.XSD_STRING); response = (String) call.invoke(new Object[] {aduana,anomc,numeromc,conoembar,viatrans,tipomani}); System.out.println("Cadena de Manifiesto:"+response); } catch(Exception e) { ok= false; e.printStackTrace(System.out); }finally{ } return ok ; } public static boolean verificaRUC() { String response = null; boolean ok = true; try { String ruc = "10062558437"; String method = "verficaRUC"; String url = "http://www.aduanet.gob.pe/ws-ad-pd/ws-ad-pd"; Service service = new Service(); Call call = (Call) service.createCall(); QName qnamer = new QName("urn:ws-ad-pd", "ws-ad-pd"); call.setTargetEndpointAddress( new java.net.URL(url) ); call.setOperationName(method); call.addParameter( "ruc", XMLType.XSD_STRING, ParameterMode.IN ); call.setReturnType(XMLType.XSD_STRING); response = (String) call.invoke(new Object[] {ruc}); System.out.println("Resultado RUC en estado:"+response); } catch(Exception e) { ok= false; e.printStackTrace(System.out); }finally{ } return ok ; } }