You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ru...@apache.org on 2011/01/26 10:16:57 UTC

svn commit: r1063648 - in /axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool: core/ service/bean/ service/control/ service/eclipse/ui/ service/swing/ui/ util/

Author: ruwan
Date: Wed Jan 26 09:16:54 2011
New Revision: 1063648

URL: http://svn.apache.org/viewvc?rev=1063648&view=rev
Log:
Applying the patch from Harshana on the issue AXIS2-4920

Modified:
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ClassFileHandler.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/FileCopier.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/JarFileWriter.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ServiceFileCreator.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/bean/LibrarySelectionBean.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/control/Controller.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/LibraryAddingPage.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceArchiveWizard.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceXMLFileSelectionPage.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLFileSelectionPage.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLOptionsPage.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/MainWindow.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/WizardPane.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/Constants.java
    axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/ServicePluginUtils.java

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ClassFileHandler.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ClassFileHandler.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ClassFileHandler.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ClassFileHandler.java Wed Jan 26 09:16:54 2011
@@ -24,7 +24,9 @@ import java.io.IOException;
 import java.lang.reflect.Method;
 import java.net.URL;
 import java.net.URLClassLoader;
+import java.security.AccessController;
 import java.util.ArrayList;
+import java.security.PrivilegedAction;
 
 public class ClassFileHandler {
 
@@ -41,10 +43,15 @@ public class ClassFileHandler {
     public ArrayList getMethodNamesFromClass(String classFileName,String location) throws IOException, ClassNotFoundException{
         ArrayList returnList = new ArrayList();
         File fileEndpoint = new File(location);
-        if (!fileEndpoint.exists())
+        if (!fileEndpoint.exists()){
             throw new IOException("the location is invalid");
-        URL[] urlList = {fileEndpoint.toURL()};
-        URLClassLoader clazzLoader = new URLClassLoader(urlList);
+        }
+        final URL[] urlList = {fileEndpoint.toURL()};
+        URLClassLoader clazzLoader = AccessController.doPrivileged(new PrivilegedAction<URLClassLoader>() {
+			public URLClassLoader run() {
+				return new URLClassLoader(urlList);
+			}
+		});
         Class clazz = clazzLoader.loadClass(classFileName);
         Method[] methods = clazz.getDeclaredMethods();
 

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/FileCopier.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/FileCopier.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/FileCopier.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/FileCopier.java Wed Jan 26 09:16:54 2011
@@ -36,9 +36,9 @@ public class FileCopier extends Copy{
 
     public void copyFiles(File sourceFile,File destinationDirectory,String filter){
 
-        if (sourceFile.isFile())
+        if (sourceFile.isFile()){
             this.setFile(sourceFile);
-        else {
+        }else {
         	 FileSet fileset = new FileSet();
 	            fileset.setDir(sourceFile);
 	            if (filter!=null){

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/JarFileWriter.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/JarFileWriter.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/JarFileWriter.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/JarFileWriter.java Wed Jan 26 09:16:54 2011
@@ -41,8 +41,9 @@ public class JarFileWriter extends Jar{
         if (!outputFolder.exists()){
             outputFolder.mkdir(); //create the output path
         }else{
-            if (!outputFolder.isDirectory())
+            if (!outputFolder.isDirectory()){
                 return;
+            }
         }
 
         File targetFile = new File(outputFolder,outputFileName);

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ServiceFileCreator.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ServiceFileCreator.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ServiceFileCreator.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/core/ServiceFileCreator.java Wed Jan 26 09:16:54 2011
@@ -49,10 +49,6 @@ public class ServiceFileCreator {
         writeFile(getServiceModel(serviceName,implementationClassName,methodList),serviceXmlWriter,fileName);
 
         return new File(currentUserDir + File.separator + fileName);
-
-
-
-
     }
 
     private Document getServiceModel(String serviceName,String className,ArrayList methods){

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/bean/LibrarySelectionBean.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/bean/LibrarySelectionBean.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/bean/LibrarySelectionBean.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/bean/LibrarySelectionBean.java Wed Jan 26 09:16:54 2011
@@ -27,10 +27,10 @@ public class LibrarySelectionBean {
     
 
     /**
-     * @return Returns the fileList.
+     * @return Returns a clone of the fileList.
      */
     public String[] getFileList() {
-        return fileList;
+        return fileList.clone();
     }
     /**
      * @param fileList The fileList to set.

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/control/Controller.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/control/Controller.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/control/Controller.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/control/Controller.java Wed Jan 26 09:16:54 2011
@@ -201,8 +201,9 @@ public class Controller {
             throw new ProcessException(e);
         } finally {
             deleteDir(tempFileFolder);
-             if (isServiceCreated)
+             if (isServiceCreated){
                 serviceFile.delete();
+             }
         }
 
     }

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/LibraryAddingPage.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/LibraryAddingPage.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/LibraryAddingPage.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/LibraryAddingPage.java Wed Jan 26 09:16:54 2011
@@ -38,7 +38,6 @@ import org.eclipse.swt.widgets.Text;
 
 public class LibraryAddingPage extends AbstractServiceWizardPage {
     
-    private Label libraryNameLabel;
     private Text libraryNameText;
     private Button browseButton;
     private Button addButton;

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceArchiveWizard.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceArchiveWizard.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceArchiveWizard.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceArchiveWizard.java Wed Jan 26 09:16:54 2011
@@ -47,7 +47,6 @@ public class ServiceArchiveWizard extend
     private ServiceArchiveOutputLocationPage serviceArchiveOutputLocationPage;
     private LibraryAddingPage libPage;
 
-    private boolean updateServiceGenerationStatus;
     private String classFileLocation;
     private String wsdlFileGenerationStatus;
     
@@ -148,8 +147,9 @@ public class ServiceArchiveWizard extend
         {
            protected void execute(IProgressMonitor monitor)
            throws CoreException , InvocationTargetException, InterruptedException{
-              if (monitor == null)
+              if (monitor == null){
                  monitor = new NullProgressMonitor();
+              }
 
               /*
                * "7" is the total amount of steps, see below monitor.worked(amount)

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceXMLFileSelectionPage.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceXMLFileSelectionPage.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceXMLFileSelectionPage.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/ServiceXMLFileSelectionPage.java Wed Jan 26 09:16:54 2011
@@ -50,7 +50,6 @@ public class ServiceXMLFileSelectionPage
     
     
     private boolean skipNextPage=true;
-    private boolean pageComplete;
     
     public ServiceXMLFileSelectionPage(){
         super("page2");
@@ -186,8 +185,9 @@ public class ServiceXMLFileSelectionPage
     
  
     public void updateRecommendation(String message){
-        if (recommendationTextLable!=null)
-        recommendationTextLable.setText(message);
+		if (recommendationTextLable != null) {
+			recommendationTextLable.setText(message);
+		}
     }
     
    

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLFileSelectionPage.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLFileSelectionPage.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLFileSelectionPage.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLFileSelectionPage.java Wed Jan 26 09:16:54 2011
@@ -38,9 +38,6 @@ import org.eclipse.swt.widgets.Text;
 
 public class WSDLFileSelectionPage extends AbstractServiceWizardPage {
     
-    //  set the default to false. This step cannot be skipped
-    private boolean skipNextPage = false;
-    
     private Text wsdlTextBox;
     private Label selectionLabel;
     private Button browseButton;

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLOptionsPage.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLOptionsPage.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLOptionsPage.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/eclipse/ui/WSDLOptionsPage.java Wed Jan 26 09:16:54 2011
@@ -52,7 +52,7 @@ public class WSDLOptionsPage extends Abs
     private Button searchDeclaredMethodsCheckBox;
     private Table table;
     
-    private boolean dirty = false;
+//    private boolean dirty = false;
     
     public WSDLOptionsPage(){
         super("page6");
@@ -274,7 +274,7 @@ public class WSDLOptionsPage extends Abs
     }
     
     private void updateDirtyStatus(boolean status){
-        dirty = status;
+//        dirty = status;
         if (table.isVisible()){
             table.setEnabled(!status);
         }

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/MainWindow.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/MainWindow.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/MainWindow.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/MainWindow.java Wed Jan 26 09:16:54 2011
@@ -105,8 +105,9 @@ public class MainWindow extends JFrame {
                 bHeight);
         this.cancelButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
-                if (confirmExit())
+                if (confirmExit()){
                     System.exit(0);
+                }
             }
         });
 

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/WizardPane.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/WizardPane.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/WizardPane.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/service/swing/ui/WizardPane.java Wed Jan 26 09:16:54 2011
@@ -79,10 +79,11 @@ public abstract class WizardPane extends
         fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
         fc.addChoosableFileFilter(new FileFilter() {
             public boolean accept(File f) {
-                if (f.getName().endsWith(extension) || f.isDirectory())
+                if (f.getName().endsWith(extension) || f.isDirectory()){
                     return true;
-                else
+                }else{
                     return false;
+                }
             }
 
             public String getDescription() {

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/Constants.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/Constants.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/Constants.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/Constants.java Wed Jan 26 09:16:54 2011
@@ -20,7 +20,7 @@
 package org.apache.axis2.tool.util;
 
 public class Constants {
-    public class UIConstants{
+    public static class UIConstants{
         public static final int LABEL_WIDTH=100;
         public static final int RADIO_BUTTON_WIDTH=200;
         public static final int TEXT_BOX_WIDTH=250;
@@ -31,7 +31,7 @@ public class Constants {
     
     }
     
-    public class ServiceConstants{
+    public static class ServiceConstants{
     	public static final String RESOURCE_FOLDER="resources";						
     	public static final String SERVICES_XSD_SCHEMA_NAME="services.xsd";				
     	public static final String XML_SCHEMA="http://www.w3.org/2001/XMLSchema";	

Modified: axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/ServicePluginUtils.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/ServicePluginUtils.java?rev=1063648&r1=1063647&r2=1063648&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/ServicePluginUtils.java (original)
+++ axis/axis2/java/core/trunk/modules/tool/axis2-eclipse-service-plugin/src/main/java/org/apache/axis2/tool/util/ServicePluginUtils.java Wed Jan 26 09:16:54 2011
@@ -1,6 +1,7 @@
 package org.apache.axis2.tool.util;
 
 import java.io.File;
+import java.io.IOException;
 
 import javax.xml.transform.Source;
 import javax.xml.transform.stream.StreamSource;
@@ -10,8 +11,13 @@ import javax.xml.validation.Validator;
 
 import org.apache.axis2.tool.service.eclipse.plugin.ServiceArchiver;
 import org.apache.axis2.tool.util.Constants.ServiceConstants;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.xml.sax.SAXException;
 
 public class ServicePluginUtils {
+	private static final Log logger = LogFactory.getLog(ServicePluginUtils.class);
+	
 	/**
 	 * Validates the given xml file against the axis2 services schema. 
 	 * @return return true if the xml is valid
@@ -19,20 +25,23 @@ public class ServicePluginUtils {
 	public static boolean isServicesXMLValid(String servicesXmlPath){
         SchemaFactory factory = 
             SchemaFactory.newInstance(ServiceConstants.XML_SCHEMA);
-        
-        try {
-        	String resourcePath=addAnotherNodeToPath(
-        			ServiceConstants.RESOURCE_FOLDER, ServiceConstants.SERVICES_XSD_SCHEMA_NAME);
-            Schema schema = factory.newSchema(
-            		 ServiceArchiver.getDefault().getBundle().getEntry(resourcePath));
-            Validator validator = schema.newValidator();
-            Source source = new StreamSource(new File(servicesXmlPath));
-            validator.validate(source);
-            return true;
-        }
-        catch (Exception ex) {
-            return false;
-        }  
+       
+        	try {
+				String resourcePath=addAnotherNodeToPath(
+						ServiceConstants.RESOURCE_FOLDER, ServiceConstants.SERVICES_XSD_SCHEMA_NAME);
+				Schema schema = factory.newSchema(
+						 ServiceArchiver.getDefault().getBundle().getEntry(resourcePath));
+				Validator validator = schema.newValidator();
+				Source source = new StreamSource(new File(servicesXmlPath));
+				validator.validate(source);
+				return true;
+			} catch (SAXException e) {
+				logger.debug("Schema addition failed",e);
+				return false;
+			} catch (IOException e) {
+				logger.debug("Schema validation failed",e);
+				return false;
+			}
 	}
 	
 	public static String addAnotherNodeToPath(String currentPath, String newNode) {