diff --git a/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/exception/VsbException.java b/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/exception/VsbException.java
index 2c0fe1d81fffed3565b3e6a04fe3ba92435e0cc9..ed46ed724684edf86d3b4ece9226a633b0bfe1a7 100644
--- a/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/exception/VsbException.java
+++ b/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/exception/VsbException.java
@@ -27,6 +27,5 @@ public class VsbException extends Exception{
 	public VsbException(String message, Throwable cause){
 		
 		super(message, cause);
-		
 	}
 }
diff --git a/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/utils/Constants.java b/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/utils/Constants.java
index a29f5de6b5fde8fe1d2fb16b12375e3a0deadfe0..f1adf5d7f535de9e4f818620a8bfb41dd903ba3b 100644
--- a/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/utils/Constants.java
+++ b/gmdl-utils/src/main/java/eu/chorevolution/vsb/gmdl/utils/Constants.java
@@ -37,7 +37,6 @@ public class Constants {
 	public static String target_namespace;
 	public static String target_namespace_path;
 	
-
     public static final Pattern class_name_checker =  Pattern.compile("[A-Za-z_$]+[a-zA-Z0-9_$]*");
 
 	
diff --git a/protocol-pool/gm-soap/src/main/java/eu/chorevolution/vsb/java2wsdl/Java2WSDL.java b/protocol-pool/gm-soap/src/main/java/eu/chorevolution/vsb/java2wsdl/Java2WSDL.java
index c040db5f6a14159edea0579f058b17b187cb7386..b0bc2bd7e68b2c2cfa5f32fcebe9b347ce79c13b 100644
--- a/protocol-pool/gm-soap/src/main/java/eu/chorevolution/vsb/java2wsdl/Java2WSDL.java
+++ b/protocol-pool/gm-soap/src/main/java/eu/chorevolution/vsb/java2wsdl/Java2WSDL.java
@@ -77,10 +77,6 @@ public class Java2WSDL {
 				// "-targetNamespace", service_name,
 		};
         
-        for(String arg : arguments){
-        	
-        	System.out.println(arg);
-        }
        
 		Java2WSDLCommandLineOptionParser commandLineOptionParser = new Java2WSDLCommandLineOptionParser(
 				arguments);
diff --git a/vsb-manager/src/main/java/eu/chorevolution/vsb/manager/VsbManager.java b/vsb-manager/src/main/java/eu/chorevolution/vsb/manager/VsbManager.java
index 24379485042f8c23547c37abf4aff3180e80e863..91cf3cc65e794650efa82ad9ffebe1ef3cb196c0 100644
--- a/vsb-manager/src/main/java/eu/chorevolution/vsb/manager/VsbManager.java
+++ b/vsb-manager/src/main/java/eu/chorevolution/vsb/manager/VsbManager.java
@@ -86,7 +86,7 @@ public class VsbManager {
 	
 	public VsbOutput generateWar(String interfaceDescriptionPath, ProtocolType busProtocol, String service_name){
 		
-		checkServiceName(service_name);
+		service_name = deleteSpecialChar(service_name);
 		Constants.service_name = service_name;
 		VsbOutput  vsbOutput = generate(interfaceDescriptionPath, busProtocol);
 		vsbOutput.setinvaddr_url = Constants.setinvaddr_service_url;
@@ -109,7 +109,7 @@ public class VsbManager {
 	
 	public VsbOutput generateWar(byte[] interfaceDescriptionByteArray, ProtocolType busProtocol, String service_name){
 		
-		checkServiceName(service_name);
+		service_name = deleteSpecialChar(service_name);
 		Constants.service_name = service_name;
 		String interfaceDescriptionPath = interfaceDescriptionBytesToFile(interfaceDescriptionByteArray);
 		VsbOutput  vsbOutput = generate(interfaceDescriptionPath, busProtocol);
@@ -686,13 +686,16 @@ public class VsbManager {
 			e.printStackTrace();
 		}
 
-		try {
+		try{
+			
 			jsonObject = (JSONObject) parser.parse(new FileReader(configTemplatePath));
-		} catch (IOException | ParseException e) {
+			
+		} catch (IOException | ParseException e){
+			
 			e.printStackTrace();
 		}
 
-		if(protocol==ProtocolType.SOAP) {
+		if(protocol==ProtocolType.SOAP){
 			
 			jsonObject.put("target_namespace", Constants.target_namespace);
 			jsonObject.put("service_name", Constants.soap_service_name);
@@ -762,21 +765,28 @@ public class VsbManager {
 		return interfaceDescriptionFile.getAbsolutePath();
 	}
 	
-	private void checkServiceName(String serviceName){
-		
-		for (String part : serviceName.split("\\.")){
-			
-			if(!(Constants.class_name_checker.matcher(serviceName).matches())){
-				
-				System.err.println("Service name constains illegal character");
-				throw new EmptyStackException();
-				
-			}
-			
-		} 
-		
+
+	private static String deleteSpecialChar(String s){
 		
-	}
+		  StringBuilder result = new StringBuilder();
+		  boolean firstChar = true;
+
+		  for (char ch : s.toCharArray()) {
+		   if (firstChar) {
+		    firstChar = false;
+		    if (Character.isJavaIdentifierStart(ch)) {
+		     result.append(ch);
+		    }
+		    continue;
+		   }
+		   if (Character.isJavaIdentifierPart(ch)) {
+		    result.append(ch);
+		   }
+		  }
+		  return result.toString();
+		 }
+
+
 	
 	/******************************************************************************************************/
 	
diff --git a/vsb-manager/src/test/java/eu/chorevolution/vsb/manager/VsbManagerTest.java b/vsb-manager/src/test/java/eu/chorevolution/vsb/manager/VsbManagerTest.java
index 6542aa163ac3ad7fda33511d3999e3f7dae5e7cb..d057e7ec2e975b797426cfeba0b80b7a89823bdf 100644
--- a/vsb-manager/src/test/java/eu/chorevolution/vsb/manager/VsbManagerTest.java
+++ b/vsb-manager/src/test/java/eu/chorevolution/vsb/manager/VsbManagerTest.java
@@ -17,7 +17,7 @@ public class VsbManagerTest{
 //		String interfaceDescriptionPath  = "/home/pntumba/inria_code/repositories/urban-traffic-coordination/bindingcomponents/bcDTS-CONGESTION/model/dts-congestion.gidl";
 		
 		VsbManager vsbm = new VsbManager();
-		vsbm.generateWar(interfaceDescriptionPath, ProtocolType.SOAP, "CONGESTION");	
+		vsbm.generateWar(interfaceDescriptionPath, ProtocolType.SOAP, "CONGES-TION@");	
 //		PathResolver.cleanWSDL("/tmp/GeneratorFolder6793567410235875288/wsdlCONGESTIONBC.wsdl");
 	}	
 }
\ No newline at end of file