if(!resourcePath.startsWith("/db")) resourcePath = parent.getPath() + '/' + resourcePath; if(!destinationPath.startsWith("/db")) destinationPath = parent.getPath() + '/' + destinationPath;
resourcePath = NativeBroker.checkPath(resourcePath, parent.getPath());  destinationPath = NativeBroker.checkPath(destinationPath, parent.getPath());
    public void copyResource(String resourcePath, String destinationPath,            String newName) throws XMLDBException {    	if(!resourcePath.startsWith("/db"))            resourcePath = parent.getPath() + '/' + resourcePath;        if(!destinationPath.startsWith("/db"))            destinationPath = parent.getPath() + '/' + destinationPath;        if(newName == null) {            int p = resourcePath.lastIndexOf(('/'));            newName = resourcePath.substring(p + 1);        }        Vector params = new Vector();        params.addElement( resourcePath );        params.addElement( destinationPath );        params.addElement( newName );        try {            client.execute( "copyResource", params );        } catch ( XmlRpcException xre ) {            throw new XMLDBException( ErrorCodes.VENDOR_ERROR,                xre.getMessage(),                xre );        } catch ( IOException ioe ) {            throw new XMLDBException( ErrorCodes.VENDOR_ERROR,                ioe.getMessage(),                ioe);        }    }