AdminClient does register two WSDD
Hi all,As far as I know, every time I need to redeploy my JEE app with Axis Web Services, the WS have to be registered again. I use Axis 1.3.So, to solve this issue, I created a ServletContextListener that register the WSDD when my app's context is created. I do this in a new thread, otherwise it stuck and take a long time to process it. May be due to a lock ou wait to complete context load.Well, but my real problem is: AdminClient does register two or more WSDD in a row, which means, I loop as many times as the number os WSDD I have to register, but, only the first WSDD is registered, then the following cause a java.net.ConnectException: Connection refused: connect error message (faultString).My code if like that://for each WSDD... for( int i=0; iwsdd_file.length; i++ ) { try { URL urlWsdd = this.getClass().getClassLoader().getResource(wsdd_file[i]); if( urlWsdd == null ) { throw new Exception(WSDD +urlWsdd+ not found!); } args[3] = urlWsdd.getFile(); AdminClient adminClient = new AdminClient(); String ret = adminClient.process(args); } catch (Exception e) { log.error(ERROR WSDD: +e.getMessage()); }} //for()How can I solve this?Thanks
RE: AdminClient does register two WSDD
Daniel, When you stop the server, AXIS stores a list of all currently-active services in a file, /WEB-INF/server-config.wsdd. When you start the server, AXIS looks for this file and if it exists, it will redeploy the services. In short, you don't need the code below, unless you're planning on deleting the server-config.wsdd when the server stops. Greg From: Daniel Destro [mailto:[EMAIL PROTECTED] Sent: Monday, April 03, 2006 8:57 AMTo: axis-user@ws.apache.orgSubject: AdminClient does register two WSDD Hi all,As far as I know, every time I need to redeploy my JEE app with Axis Web Services, the WS have to be registered again. I use Axis 1.3.So, to solve this issue, I created a ServletContextListener that register the WSDD when my app's context is created. I do this in a new thread, otherwise it stuck and take a long time to process it. May be due to a lock ou wait to complete context load.Well, but my real problem is: AdminClient does register two or more WSDD in a row, which means, I loop as many times as the number os WSDD I have to register, but, only the first WSDD is registered, then the following cause a " java.net.ConnectException: Connection refused: connect" error message (faultString).My code if like that://for each WSDD...for( int i=0; iwsdd_file.length; i++ ) { try { URL urlWsdd = this.getClass().getClassLoader().getResource(wsdd_file[i]); if( urlWsdd == null ) { throw new Exception("WSDD "+urlWsdd+" not found!"); } args[3] = urlWsdd.getFile(); AdminClient adminClient = new AdminClient(); String ret = adminClient.process(args); } catch (Exception e) { log.error("ERROR WSDD: "+e.getMessage()); }} //for()How can I solve this?Thanks
Re: AdminClient does register two WSDD
Hi Greg,I, kinda knew about it, but my wep app is packed in a EAR file and this is mandatory. So, every time I redeploy it, the server-config.wsdd is empty or does not exist.Also, I'd like to have something more automatic. I am searching for how to generate the WSDD of all my Web Services using a single wsdd file, but I did not find anything about it, so I would have to deploy only one WSDD at a time.Ayway,I think when I use AdminClient from Java code it, somehow, keeps the AxisServlet busy. Any ideas?On 4/3/06, Greg Pelly [EMAIL PROTECTED] wrote: Daniel, When you stop the server, AXIS stores a list of all currently-active services in a file, /WEB-INF/server-config.wsdd. When you start the server, AXIS looks for this file and if it exists, it will redeploy the services. In short, you don't need the code below, unless you're planning on deleting the server-config.wsdd when the server stops. Greg From: Daniel Destro [mailto:[EMAIL PROTECTED]] Sent: Monday, April 03, 2006 8:57 AMTo: axis-user@ws.apache.orgSubject: AdminClient does register two WSDD Hi all,As far as I know, every time I need to redeploy my JEE app with Axis Web Services, the WS have to be registered again. I use Axis 1.3.So, to solve this issue, I created a ServletContextListener that register the WSDD when my app's context is created. I do this in a new thread, otherwise it stuck and take a long time to process it. May be due to a lock ou wait to complete context load.Well, but my real problem is: AdminClient does register two or more WSDD in a row, which means, I loop as many times as the number os WSDD I have to register, but, only the first WSDD is registered, then the following cause a java.net.ConnectException: Connection refused: connect error message (faultString).My code if like that://for each WSDD...for( int i=0; iwsdd_file.length; i++ ) { try { URL urlWsdd = this.getClass().getClassLoader().getResource(wsdd_file[i]); if( urlWsdd == null ) { throw new Exception(WSDD +urlWsdd+ not found!); } args[3] = urlWsdd.getFile(); AdminClient adminClient = new AdminClient(); String ret = adminClient.process(args); } catch (Exception e) { log.error(ERROR WSDD: +e.getMessage()); } } //for()How can I solve this?Thanks