http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/gfac/gfac-monitor/src/main/java/org/apache/airavata/gfac/monitor/util/AMQPConnectionUtil.java
----------------------------------------------------------------------
diff --git 
a/modules/gfac/gfac-monitor/src/main/java/org/apache/airavata/gfac/monitor/util/AMQPConnectionUtil.java
 
b/modules/gfac/gfac-monitor/src/main/java/org/apache/airavata/gfac/monitor/util/AMQPConnectionUtil.java
index b69cf52..6a4ed3b 100644
--- 
a/modules/gfac/gfac-monitor/src/main/java/org/apache/airavata/gfac/monitor/util/AMQPConnectionUtil.java
+++ 
b/modules/gfac/gfac-monitor/src/main/java/org/apache/airavata/gfac/monitor/util/AMQPConnectionUtil.java
@@ -23,6 +23,8 @@ package org.apache.airavata.gfac.monitor.util;
 import com.rabbitmq.client.Connection;
 import com.rabbitmq.client.ConnectionFactory;
 import com.rabbitmq.client.DefaultSaslConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import javax.net.ssl.KeyManagerFactory;
 import javax.net.ssl.SSLContext;
@@ -32,6 +34,7 @@ import java.util.Collections;
 import java.util.List;
 
 public class AMQPConnectionUtil {
+    private final static Logger logger = 
LoggerFactory.getLogger(AMQPConnectionUtil.class);
     public static Connection connect(List<String>hosts,String vhost, String 
proxyFile) {
         Collections.shuffle(hosts);
         for (String host : hosts) {
@@ -68,7 +71,7 @@ public class AMQPConnectionUtil {
 
             connection = factory.newConnection();
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
             return null;
         }
         return connection;

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/gfac/gfac-monitor/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
----------------------------------------------------------------------
diff --git 
a/modules/gfac/gfac-monitor/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
 
b/modules/gfac/gfac-monitor/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
index a979890..daa2e91 100644
--- 
a/modules/gfac/gfac-monitor/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
+++ 
b/modules/gfac/gfac-monitor/src/test/java/org/apache/airavata/job/AMQPMonitorTest.java
@@ -48,6 +48,8 @@ import 
org.apache.airavata.model.messaging.event.JobStatusChangeEvent;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -71,6 +73,7 @@ public class AMQPMonitorTest {
     private Thread pushThread;
     private String proxyFilePath;
     private ComputeResourceDescription computeResourceDescription;
+    private final static Logger logger = 
LoggerFactory.getLogger(AMQPMonitorTest.class);
 
     @Before
     public void setUp() throws Exception {
@@ -108,7 +111,7 @@ public class AMQPMonitorTest {
                 }
             }).start();
         } catch (Exception e) {
-            e.printStackTrace();
+           logger.error(e.getMessage(), e);
         }
         computeResourceDescription = new 
ComputeResourceDescription("TestComputerResoruceId", "TestHostName");
         computeResourceDescription.setHostName("stampede-host");

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/security/TokenizedSSHAuthInfo.java
----------------------------------------------------------------------
diff --git 
a/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/security/TokenizedSSHAuthInfo.java
 
b/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/security/TokenizedSSHAuthInfo.java
index 5536e17..683985f 100644
--- 
a/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/security/TokenizedSSHAuthInfo.java
+++ 
b/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/security/TokenizedSSHAuthInfo.java
@@ -176,7 +176,7 @@ public class TokenizedSSHAuthInfo implements 
SSHPublicKeyFileAuthentication {
             bw.write(data);
             bw.close();
         } catch (IOException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
         return temp.getAbsolutePath();
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
----------------------------------------------------------------------
diff --git 
a/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
 
b/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
index bbc258d..ab698ff 100644
--- 
a/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
+++ 
b/modules/gfac/gfac-ssh/src/main/java/org/apache/airavata/gfac/ssh/util/GFACSSHUtils.java
@@ -206,7 +206,8 @@ public class GFACSSHUtils {
             sshSecurityContext.setPbsCluster(pbsCluster);
             jobExecutionContext.addSecurityContext(key, sshSecurityContext);
         } catch (Exception e) {
-            e.printStackTrace();  //To change body of catch statement use File 
| Settings | File Templates.
+            logger.error(e.getMessage(), e);
+            throw new GFacException("Error adding security Context", e);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
----------------------------------------------------------------------
diff --git 
a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
 
b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
index 0f31f49..362f3f2 100644
--- 
a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
+++ 
b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/TestClient.java
@@ -74,7 +74,7 @@ public class TestClient {
                             System.out.println(" Message Received with message 
id '" + message.getMessageId()
                                     + "' and with message type '" + 
message.getType() + "' and with state : '" + event.getState().toString());
                         } catch (TException e) {
-                            e.printStackTrace();
+                            logger.error(e.getMessage(), e);
                         }
                     }
                 }
@@ -82,7 +82,7 @@ public class TestClient {
         } catch (ApplicationSettingsException e) {
             logger.error("Error reading airavata server properties", e);
         }catch (Exception e) {
-            e.printStackTrace();
+           logger.error(e.getMessage(), e);
         }
 
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServer.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServer.java
 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServer.java
index d86960c..78957ac 100644
--- 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServer.java
+++ 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServer.java
@@ -104,7 +104,7 @@ public class OrchestratorServer implements IServer{
        try {
                        new OrchestratorServer().start();
                } catch (Exception e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
                }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
index de293e4..e0548f4 100644
--- 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
+++ 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
@@ -97,7 +97,7 @@ public class OrchestratorServerHandler implements 
OrchestratorService.Iface,
                return 
orchestrator_cpi_serviceConstants.ORCHESTRATOR_CPI_VERSION;
        }
 
-       public OrchestratorServerHandler() {
+       public OrchestratorServerHandler() throws OrchestratorException{
                // registering with zk
                try {
                        if (ServerSettings.isRabbitMqPublishEnabled()) {
@@ -129,16 +129,21 @@ public class OrchestratorServerHandler implements 
OrchestratorService.Iface,
                                                this);
                                log.info("Finished starting ZK: " + zk);
                        } catch (IOException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
+                throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                        } catch (InterruptedException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
+                throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                        } catch (KeeperException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
+                throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                        }
                } catch (ApplicationSettingsException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
+            throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                }catch (AiravataException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
+            throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                }
                // orchestrator init
                try {
@@ -149,9 +154,11 @@ public class OrchestratorServerHandler implements 
OrchestratorService.Iface,
                        orchestrator.initialize();
                        orchestrator.getOrchestratorContext().setZk(this.zk);
                } catch (OrchestratorException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
+            throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                } catch (RegistryException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
+            throw new OrchestratorException("Error while initializing 
orchestrator service", e);
                }
        }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
index ce71f2a..f2ccbff 100644
--- 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
+++ 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
@@ -29,9 +29,12 @@ import 
org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.model.util.ExecutionType;
 import org.apache.airavata.model.workspace.experiment.Experiment;
 import org.apache.airavata.workflow.catalog.WorkflowCatalogFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class DataModelUtils {
 
+    private final static Logger logger = 
LoggerFactory.getLogger(DataModelUtils.class);
        public static ExecutionType getExecutionType(Experiment experiment){
                try {
                        ApplicationInterface applicationInterface = 
AppCatalogFactory.getAppCatalog().getApplicationInterface();
@@ -46,7 +49,7 @@ public class DataModelUtils {
                                }
                        }
                } catch (AppCatalogException e) {
-                       e.printStackTrace();
+                       logger.error(e.getMessage(), e);
                }
                return ExecutionType.UNKNOWN;
        }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorRecoveryHandler.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorRecoveryHandler.java
 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorRecoveryHandler.java
index ff16848..fb3bd51 100644
--- 
a/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorRecoveryHandler.java
+++ 
b/modules/orchestrator/airavata-orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/OrchestratorRecoveryHandler.java
@@ -88,7 +88,7 @@ public class OrchestratorRecoveryHandler implements Watcher {
                 }
                 // we do not move the old experiment in to new gfac node, gfac 
will do it
             } catch (Exception e) {       // we attempt all the experiments
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
             
log.info("------------------------------------------------------------------------------------");
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/airavata-orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/airavata-orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
 
b/modules/orchestrator/airavata-orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
index 6f61543..afe0617 100644
--- 
a/modules/orchestrator/airavata-orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
+++ 
b/modules/orchestrator/airavata-orchestrator-service/src/test/java/org/apache/airavata/orchestrator/client/util/Initialize.java
@@ -134,7 +134,6 @@ public class Initialize {
                 }
             } catch (SQLException e) {
                 logger.error(e.getMessage(), e);
-                e.printStackTrace();  //To change body of catch statement use 
File | Settings | File Templates.
             }
         }
 
@@ -317,9 +316,9 @@ public class Initialize {
             Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
             
DriverManager.getConnection("jdbc:derby:memory:unit-testing-jpa;create=true").close();
         } catch (ClassNotFoundException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
         } catch (SQLException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
         }
     }
 
@@ -327,7 +326,7 @@ public class Initialize {
         try {
             server.shutdown();
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACServiceJobSubmitter.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACServiceJobSubmitter.java
 
b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACServiceJobSubmitter.java
index c5578d8..fccbb44 100644
--- 
a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACServiceJobSubmitter.java
+++ 
b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACServiceJobSubmitter.java
@@ -105,17 +105,23 @@ public class GFACServiceJobSubmitter implements 
JobSubmitter, Watcher {
                                }
                        }
                } catch (TException e) {
+            logger.error(e.getMessage(), e);
                        throw new OrchestratorException(e);
                } catch (InterruptedException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
                } catch (KeeperException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
                } catch (ApplicationSettingsException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
                } catch (IOException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
                } catch (Exception e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
                }finally {
             gfacClient.getOutputProtocol().getTransport().close();
         }
@@ -155,17 +161,23 @@ public class GFACServiceJobSubmitter implements 
JobSubmitter, Watcher {
                 }
             }
         } catch (TException e) {
+            logger.error(e.getMessage(), e);
             throw new OrchestratorException(e);
         } catch (InterruptedException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
         } catch (KeeperException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
         } catch (ApplicationSettingsException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
         } catch (IOException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new OrchestratorException(e);
         }finally {
 
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
 
b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
index 1fc1ad2..dd3647a 100644
--- 
a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
+++ 
b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/cpi/impl/AbstractOrchestrator.java
@@ -119,7 +119,7 @@ public abstract class AbstractOrchestrator implements 
Orchestrator {
             setAiravataUserName(ServerSettings.getDefaultUser());
             setGatewayName(ServerSettings.getDefaultUserGateway());
         }  catch (ApplicationSettingsException e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
----------------------------------------------------------------------
diff --git 
a/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
 
b/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
index 2823cdf..b590d79 100644
--- 
a/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
+++ 
b/modules/orchestrator/orchestrator-core/src/test/java/org/apache/airavata/orchestrator/core/util/Initialize.java
@@ -134,7 +134,6 @@ public class Initialize {
                 }
             } catch (SQLException e) {
                 logger.error(e.getMessage(), e);
-                e.printStackTrace();  //To change body of catch statement use 
File | Settings | File Templates.
             }
         }
 
@@ -312,22 +311,12 @@ public class Initialize {
 
     }
 
-    private void startDerbyInEmbeddedMode(){
-        try {
-            Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
-            
DriverManager.getConnection("jdbc:derby:memory:unit-testing-jpa;create=true").close();
-        } catch (ClassNotFoundException e) {
-            e.printStackTrace();
-        } catch (SQLException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public void stopDerbyServer() {
+    public void stopDerbyServer() throws SQLException{
         try {
             server.shutdown();
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new SQLException(e.getMessage(), e);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
 
b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
index a76bb5d..ec60bd4 100644
--- 
a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
+++ 
b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/RegistryImpl.java
@@ -63,6 +63,7 @@ public class RegistryImpl implements Registry {
             projectRegistry = new ProjectRegistry(gatewayResource, user);
         } catch (ApplicationSettingsException e) {
             logger.error("Unable to read airavata server properties..", e);
+            throw new RegistryException("Unable to read airavata server 
properties..", e);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
 
b/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
index d795f4a..84eae9d 100644
--- 
a/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
+++ 
b/modules/registry/airavata-jpa-registry/src/test/java/org/apache/airavata/persistance/registry/jpa/util/Initialize.java
@@ -93,7 +93,7 @@ public class Initialize {
         return false;
     }
 
-    public void initializeDB() {
+    public void initializeDB() throws SQLException{
         String jdbcUrl = null;
         String jdbcDriver = null;
         String jdbcUser = null;
@@ -138,7 +138,6 @@ public class Initialize {
                 }
             } catch (SQLException e) {
                 logger.error(e.getMessage(), e);
-                e.printStackTrace();  //To change body of catch statement use 
File | Settings | File Templates.
             }
         }
 
@@ -167,6 +166,7 @@ public class Initialize {
           
         } catch (RegistryException e) {
             logger.error("Unable to read properties", e);
+            throw new SQLException(e.getMessage(), e);
         }
     }
 
@@ -321,22 +321,12 @@ public class Initialize {
 
     }
 
-    private void startDerbyInEmbeddedMode(){
-        try {
-            Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
-            
DriverManager.getConnection("jdbc:derby:memory:unit-testing-jpa;create=true").close();
-        } catch (ClassNotFoundException e) {
-            e.printStackTrace();
-        } catch (SQLException e) {
-            e.printStackTrace();
-        }
-    }
-
-    public void stopDerbyServer() {
+    public void stopDerbyServer() throws SQLException{
         try {
             server.shutdown();
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
+            throw new SQLException("Error while stopping derby server", e);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/server/src/main/java/org/apache/airavata/server/ServerMain.java
----------------------------------------------------------------------
diff --git 
a/modules/server/src/main/java/org/apache/airavata/server/ServerMain.java 
b/modules/server/src/main/java/org/apache/airavata/server/ServerMain.java
index c6e36e8..1b1a41b 100644
--- a/modules/server/src/main/java/org/apache/airavata/server/ServerMain.java
+++ b/modules/server/src/main/java/org/apache/airavata/server/ServerMain.java
@@ -189,7 +189,7 @@ public class ServerMain {
                                try {
                                        Thread.sleep(5000);
                                } catch (InterruptedException e) {
-                                       e.printStackTrace();
+                                       logger.error(e.getMessage(), e);
                                }
                        }
                        logger.info("Server"+(serverPID==-1? "(s)":" instance 
"+serverPID)+" stopped!!!");
@@ -265,9 +265,9 @@ public class ServerMain {
                        serverStartedFile.deleteOnExit();
                        new 
RandomAccessFile(serverStartedFile,"rw").getChannel().lock();
                } catch (FileNotFoundException e) {
-                       e.printStackTrace();
+                       logger.error(e.getMessage(), e);
                } catch (IOException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
                }
        }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowEngineImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowEngineImpl.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowEngineImpl.java
index d53eb75..a8ee98b 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowEngineImpl.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowEngineImpl.java
@@ -67,11 +67,11 @@ public class WorkflowEngineImpl implements WorkflowEngine {
                                        try {
                                                
workflowInterpreter.scheduleDynamically();
                                        } catch (WorkflowException e) {
-                                               e.printStackTrace();
+                        logger.error(e.getMessage(), e);
                                        } catch (RegistryException e) {
-                                               e.printStackTrace();
+                        logger.error(e.getMessage(), e);
                                        } catch (AiravataException e) {
-                        e.printStackTrace();
+                        logger.error(e.getMessage(), e);
                     }
                 };
                        }.start();

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowUtils.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowUtils.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowUtils.java
index b1d6073..fb2a6fa 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowUtils.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/WorkflowUtils.java
@@ -29,9 +29,11 @@ import 
org.apache.aiaravata.application.catalog.data.impl.AppCatalogFactory;
 import org.apache.airavata.model.util.ExecutionType;
 import org.apache.airavata.model.workspace.experiment.Experiment;
 import org.apache.airavata.workflow.catalog.WorkflowCatalogFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class WorkflowUtils {
-
+    private static final Logger logger = 
LoggerFactory.getLogger(WorkflowUtils.class);
        public static ExecutionType getExecutionType(Experiment experiment){
                try {
                        ApplicationInterface applicationInterface = 
AppCatalogFactory.getAppCatalog().getApplicationInterface();
@@ -46,7 +48,7 @@ public class WorkflowUtils {
                                }
                        }
                } catch (AppCatalogException e) {
-                       e.printStackTrace();
+            logger.error(e.getMessage(), e);
                }
                return ExecutionType.UNKNOWN;
        }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/concurrent/PredicatedTaskRunner.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/concurrent/PredicatedTaskRunner.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/concurrent/PredicatedTaskRunner.java
index 89557ab..6912113 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/concurrent/PredicatedTaskRunner.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/concurrent/PredicatedTaskRunner.java
@@ -20,6 +20,9 @@
 */
 package org.apache.airavata.workflow.engine.concurrent;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.util.concurrent.ConcurrentLinkedQueue;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -36,6 +39,7 @@ public class PredicatedTaskRunner {
        protected ExecutorService threadPool;
 
        protected volatile boolean stop = false;
+    private static final Logger logger = 
LoggerFactory.getLogger(PredicatedTaskRunner.class);
 
        public PredicatedTaskRunner(int numberOfThreads) {
                this.threadPool = Executors.newFixedThreadPool(numberOfThreads);
@@ -117,7 +121,7 @@ public class PredicatedTaskRunner {
 
                                        } catch (Throwable e) {
                                                // we go on no matter what
-                                               e.printStackTrace();
+                        logger.error(e.getMessage(), e);
                                        }
                                }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/SystemComponentInvoker.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/SystemComponentInvoker.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/SystemComponentInvoker.java
index 44d285d..4b9ef7e 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/SystemComponentInvoker.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/SystemComponentInvoker.java
@@ -27,11 +27,14 @@ import java.util.Map;
 import org.apache.airavata.workflow.engine.invoker.Invoker;
 import org.apache.airavata.workflow.model.exceptions.WorkflowException;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import xsul.wsif.WSIFMessage;
 import xsul.xwsif_runtime.WSIFClient;
 
 public class SystemComponentInvoker implements Invoker {
 
+    private static final Logger logger = 
LoggerFactory.getLogger(SystemComponentInvoker.class);
     private Map<String, Object> outputs = new Hashtable<String, Object>();
 
     /**
@@ -54,7 +57,7 @@ public class SystemComponentInvoker implements Invoker {
                 out = this.outputs.get(name);
                 Thread.sleep(200);
             } catch (InterruptedException e) {
-                e.printStackTrace();
+                logger.error(e.getMessage(), e);
             }
         }
         return out;

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/WorkflowInterpreter.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/WorkflowInterpreter.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/WorkflowInterpreter.java
index c236e7d..9b56b73 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/WorkflowInterpreter.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/interpretor/WorkflowInterpreter.java
@@ -282,7 +282,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                            try {
                                Thread.sleep(400);
                            } catch (InterruptedException e) {
-                               e.printStackTrace();
+                            log.error(e.getMessage(), e);
                            }
                        }
                        if (this.getWorkflow().getExecutionState() == 
WorkflowExecutionState.STOPPED) {
@@ -311,13 +311,11 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                                 log.error("Error execution workflow Node : " + 
node.getID());
                                 return;
                             } catch (TException e) {
-                                                               // TODO 
Auto-generated catch block
-                                                               
e.printStackTrace();
+                                log.error(e.getMessage(), e);
                                                        } catch 
(RegistryException e) {
-                                                               // TODO 
Auto-generated catch block
-                                                               
e.printStackTrace();
+                                log.error(e.getMessage(), e);
                                                        } catch 
(AiravataException e) {
-                                e.printStackTrace();
+                                log.error(e.getMessage(), e);
                             }
                         }
                     };
@@ -395,7 +393,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                        try {
                                Thread.sleep(1000);
                        } catch (InterruptedException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
                        }
                        
notifyViaInteractor(WorkflowExecutionMessage.EXECUTION_TASK_END, new 
WorkflowInterpreterInteractor.TaskNotification("Stop Workflow",
                                        "Cleaning up resources for Workflow", 
uuid.toString()));
@@ -579,7 +577,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                                try {
                                        
getRegistry().update(RegistryModelType.WORKFLOW_NODE_DETAIL, 
workflowNodeDetails, workflowNodeDetails.getNodeInstanceId());
                                } catch (RegistryException e) {
-                                       e.printStackTrace();
+                                       log.error(e.getMessage(), e);
                                }
                                updateWorkflowNodeStatus(workflowNodeDetails, 
WorkflowNodeState.COMPLETED);
                        }
@@ -850,11 +848,9 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                                                                        } catch 
(WorkflowException e) {
                                                                                
log.error(e.getLocalizedMessage(), e);
                                                                        } catch 
(RegistryException e) {
-                                                                               
// TODO Auto-generated catch block
-                                                                               
e.printStackTrace();
+                                        log.error(e.getMessage(), e);
                                                                        } catch 
(TException e) {
-                                                                               
// TODO Auto-generated catch block
-                                                                               
e.printStackTrace();
+                                        log.error(e.getMessage(), e);
                                                                        }
                                                                }
 
@@ -1078,7 +1074,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                try {
                        
getRegistry().update(RegistryModelType.WORKFLOW_NODE_DETAIL, nodeDetails, 
nodeDetails.getNodeInstanceId());
                } catch (RegistryException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
                }
        }
        
@@ -1096,7 +1092,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                try {
                        
getRegistry().update(RegistryModelType.WORKFLOW_NODE_DETAIL, nodeDetails, 
nodeDetails.getNodeInstanceId());
                } catch (RegistryException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
                }
        }
        
@@ -1492,9 +1488,9 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                 publishNodeStatusChange(WorkflowNodeState.COMPLETED, 
node.getID(), experiment.getExperimentID());
                 updateWorkflowNodeStatus(nodeInstanceList.get(node), state);
                        } catch (RegistryException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
                        } catch (AiravataException e) {
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
        }
@@ -1535,7 +1531,7 @@ public class WorkflowInterpreter implements 
AbstractActivityListener{
                                        
updateWorkflowNodeStatus(nodeInstanceList.get(node), state);
                                }
                        } catch (RegistryException e) {
-                               e.printStackTrace();
+                log.error(e.getMessage(), e);
                        }
        }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/DynamicInvoker.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/DynamicInvoker.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/DynamicInvoker.java
index b9466c4..dac8965 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/DynamicInvoker.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/DynamicInvoker.java
@@ -27,6 +27,8 @@ import java.net.URLClassLoader;
 
 import org.apache.airavata.workflow.model.exceptions.WorkflowException;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import xsul.wsif.WSIFMessage;
 import xsul.xwsif_runtime.WSIFClient;
 
@@ -41,6 +43,7 @@ public class DynamicInvoker implements Invoker {
     private Object[] inputs;
 
     private Object result;
+    private static final Logger log = 
LoggerFactory.getLogger(DynamicInvoker.class);
 
     /**
      * Constructs a DynamicInvoker.
@@ -133,8 +136,7 @@ public class DynamicInvoker implements Invoker {
             try {
                 Thread.sleep(200);
             } catch (InterruptedException e) {
-                // TODO Auto-generated catch block
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/SimpleInvoker.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/SimpleInvoker.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/SimpleInvoker.java
index 70be0e9..5c9fd03 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/SimpleInvoker.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/invoker/SimpleInvoker.java
@@ -168,7 +168,7 @@ public class SimpleInvoker implements Invoker {
             try {
                 wait();
             } catch (InterruptedException e) {
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
         return this.outputMessage;

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/util/XBayaUtil.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/util/XBayaUtil.java
 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/util/XBayaUtil.java
index ddee1ec..5921166 100644
--- 
a/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/util/XBayaUtil.java
+++ 
b/modules/workflow-model/workflow-engine/src/main/java/org/apache/airavata/workflow/engine/util/XBayaUtil.java
@@ -76,7 +76,7 @@ public class XBayaUtil {
         } catch (SocketTimeoutException e) {
             return false;
         } catch (Exception e) {
-            e.printStackTrace();
+            logger.error(e.getMessage(), e);
             return false;
         }
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java
index 0447906..98c9486 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java
@@ -46,67 +46,69 @@ import 
org.apache.airavata.model.appcatalog.appinterface.DataType;
 import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
 import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
 import org.apache.airavata.workflow.model.utils.WorkflowConstants;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.xmlpull.infoset.XmlNamespace;
 
 import xsul5.XmlConstants;
 
-@XmlRootElement(name="Application")
+@XmlRootElement(name = "Application")
 @XmlType(propOrder = {"applicationId", "name", "description", 
"inputParameters", "outputParameters"})
 public class WSComponentApplication {
-       
-       private String applicationId;
-       private String name;
-       private String description;
-       private List<WSComponentApplicationParameter> inputParameters;
-       private List<WSComponentApplicationParameter> outputParameters;
-       
-       public WSComponentApplication() {
-       }
-       
-       public static void main(String[] args) {
-               WSComponentApplication app = new WSComponentApplication();
-               app.setApplicationId("dsfds");
-               app.setName("dfd");
-               app.setDescription("sdfdsfds");
-               app.addInputParameter(new 
WSComponentApplicationParameter("asas", DataType.STRING, null, "sdfds", 1));
-               app.addOutputParameter(new 
WSComponentApplicationParameter("9842", DataType.STRING, null, null));
-               app.addOutputParameter(new 
WSComponentApplicationParameter("AAAAA", DataType.STRING, "sdfsdf", "243bs sd 
fsd fs f dfd"));
-             ByteArrayOutputStream byteArrayOutputStream = new 
ByteArrayOutputStream();
-               try {
-                     JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
-                     Marshaller marshaller = context.createMarshaller();
-                     marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, 
true); // pretty
-                     marshaller.setProperty(Marshaller.JAXB_ENCODING, 
"ISO-8859-1"); // specify encoding
-                     // output xml to outputstream.
-                     marshaller.marshal(app, byteArrayOutputStream);
-                     org.xmlpull.infoset.XmlElement s = 
XMLUtil.stringToXmlElement(byteArrayOutputStream.toString());
-                     System.out.println(s.toString());
-                   } catch (JAXBException e) {
-                     e.printStackTrace();
-                   }
-               try {
-                     JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
-                     Unmarshaller unmarshaller = context.createUnmarshaller();
-                     // parse xml.
-                     WSComponentApplication d = 
(WSComponentApplication)unmarshaller.unmarshal(new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray()));
-                     System.out.println(d.getApplicationId());
-                   } catch (JAXBException e) {
-                     e.printStackTrace();
-                   }
-       }
-       
-       public static WSComponentApplication 
parse(org.xmlpull.infoset.XmlElement element) {
-               String xmlString = XMLUtil.xmlElementToString(element);
-               try {
-                       JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
-                       Unmarshaller unmarshaller = 
context.createUnmarshaller();
-                       return (WSComponentApplication) 
unmarshaller.unmarshal(new ByteArrayInputStream(xmlString.getBytes()));
-               } catch (JAXBException e) {
-                       e.printStackTrace();
-                       return null;
-               }
-
-       }
+    private static final Logger log = 
LoggerFactory.getLogger(WSComponentApplication.class);
+    private String applicationId;
+    private String name;
+    private String description;
+    private List<WSComponentApplicationParameter> inputParameters;
+    private List<WSComponentApplicationParameter> outputParameters;
+
+    public WSComponentApplication() {
+    }
+
+    public static void main(String[] args) {
+        WSComponentApplication app = new WSComponentApplication();
+        app.setApplicationId("dsfds");
+        app.setName("dfd");
+        app.setDescription("sdfdsfds");
+        app.addInputParameter(new WSComponentApplicationParameter("asas", 
DataType.STRING, null, "sdfds", 1));
+        app.addOutputParameter(new WSComponentApplicationParameter("9842", 
DataType.STRING, null, null));
+        app.addOutputParameter(new WSComponentApplicationParameter("AAAAA", 
DataType.STRING, "sdfsdf", "243bs sd fsd fs f dfd"));
+        ByteArrayOutputStream byteArrayOutputStream = new 
ByteArrayOutputStream();
+        try {
+            JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
+            Marshaller marshaller = context.createMarshaller();
+            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); // 
pretty
+            marshaller.setProperty(Marshaller.JAXB_ENCODING, "ISO-8859-1"); // 
specify encoding
+            // output xml to outputstream.
+            marshaller.marshal(app, byteArrayOutputStream);
+            org.xmlpull.infoset.XmlElement s = 
XMLUtil.stringToXmlElement(byteArrayOutputStream.toString());
+            System.out.println(s.toString());
+        } catch (JAXBException e) {
+            log.error(e.getMessage(), e);
+        }
+        try {
+            JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
+            Unmarshaller unmarshaller = context.createUnmarshaller();
+            // parse xml.
+            WSComponentApplication d = (WSComponentApplication) 
unmarshaller.unmarshal(new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray()));
+            System.out.println(d.getApplicationId());
+        } catch (JAXBException e) {
+            log.error(e.getMessage(), e);
+        }
+    }
+
+    public static WSComponentApplication parse(org.xmlpull.infoset.XmlElement 
element) {
+        String xmlString = XMLUtil.xmlElementToString(element);
+        try {
+            JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
+            Unmarshaller unmarshaller = context.createUnmarshaller();
+            return (WSComponentApplication) unmarshaller.unmarshal(new 
ByteArrayInputStream(xmlString.getBytes()));
+        } catch (JAXBException e) {
+            log.error(e.getMessage(), e);
+            return null;
+        }
+
+    }
 
     public static WSComponentApplication parse(JsonObject applicationObject) {
         WSComponentApplication wsComponentApplication = new 
WSComponentApplication();
@@ -115,25 +117,25 @@ public class WSComponentApplication {
         wsComponentApplication.applicationId = 
applicationObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_COMPONENT_APPLICATION).getAsString();
 
         if (applicationObject.get(WorkflowConstants.APPLICATION_INPUT) != 
null) {
-                       JsonArray inputArray = 
applicationObject.getAsJsonArray(WorkflowConstants.APPLICATION_INPUT);
-                       WSComponentApplicationParameter inputParameter;
-                       JsonObject inputObject;
-                       for (JsonElement jsonElement : inputArray) {
-                               if (jsonElement instanceof JsonObject) {
-                                       inputObject = (JsonObject) jsonElement;
-                                       inputParameter = new 
WSComponentApplicationParameter();
-                                       
inputParameter.setDefaultValue(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DEFAULT_VALUE).getAsString());
-                                       
inputParameter.setDescription(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DESCRIPTION).getAsString());
-                                       
inputParameter.setName(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_NAME).getAsString());
-                                       
inputParameter.setType(DataType.valueOf(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DATA_TYPE).getAsString()));
-                                       
inputParameter.setInputOrder(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER).getAsInt());
-                                       if 
(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT)
 != null) {
-                                               
inputParameter.setApplicationArgument(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT).getAsString());
-                                       }
-                                       
wsComponentApplication.addInputParameter(inputParameter);
-                               }
-                       }
-               }
+            JsonArray inputArray = 
applicationObject.getAsJsonArray(WorkflowConstants.APPLICATION_INPUT);
+            WSComponentApplicationParameter inputParameter;
+            JsonObject inputObject;
+            for (JsonElement jsonElement : inputArray) {
+                if (jsonElement instanceof JsonObject) {
+                    inputObject = (JsonObject) jsonElement;
+                    inputParameter = new WSComponentApplicationParameter();
+                    
inputParameter.setDefaultValue(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DEFAULT_VALUE).getAsString());
+                    
inputParameter.setDescription(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DESCRIPTION).getAsString());
+                    
inputParameter.setName(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_NAME).getAsString());
+                    
inputParameter.setType(DataType.valueOf(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DATA_TYPE).getAsString()));
+                    
inputParameter.setInputOrder(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER).getAsInt());
+                    if 
(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT)
 != null) {
+                        
inputParameter.setApplicationArgument(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT).getAsString());
+                    }
+                    wsComponentApplication.addInputParameter(inputParameter);
+                }
+            }
+        }
 
         if (applicationObject.get(WorkflowConstants.APPLICATION_OUTPUT) != 
null) {
             JsonArray outputArray = 
applicationObject.getAsJsonArray(WorkflowConstants.APPLICATION_OUTPUT);
@@ -154,27 +156,27 @@ public class WSComponentApplication {
         return wsComponentApplication;
     }
 
-    public org.xmlpull.infoset.XmlElement toXml(){
-                     try {
-                               JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
-                                 Marshaller marshaller = 
context.createMarshaller();
-                                 
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); // pretty
-                                 
marshaller.setProperty(Marshaller.JAXB_ENCODING, "ISO-8859-1"); // specify 
encoding
-                                 // output xml to outputstream.
-                                 ByteArrayOutputStream byteArrayOutputStream = 
new ByteArrayOutputStream();
-                                 marshaller.marshal(this, 
byteArrayOutputStream);
-                                 return 
XMLUtil.stringToXmlElement(byteArrayOutputStream.toString());
-                       } catch (Exception e) {
-                               e.printStackTrace();
-                               return null;
-                       }
-       }
+    public org.xmlpull.infoset.XmlElement toXml() {
+        try {
+            JAXBContext context = 
JAXBContext.newInstance(WSComponentApplication.class);
+            Marshaller marshaller = context.createMarshaller();
+            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); // 
pretty
+            marshaller.setProperty(Marshaller.JAXB_ENCODING, "ISO-8859-1"); // 
specify encoding
+            // output xml to outputstream.
+            ByteArrayOutputStream byteArrayOutputStream = new 
ByteArrayOutputStream();
+            marshaller.marshal(this, byteArrayOutputStream);
+            return 
XMLUtil.stringToXmlElement(byteArrayOutputStream.toString());
+        } catch (Exception e) {
+            log.error(e.getMessage(), e);
+            return null;
+        }
+    }
 
     public JsonObject toJSON() {
         JsonObject componentObject = new JsonObject();
         
componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_DESCRIPTION,
 this.description);
-               
componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_NAME, 
this.name);
-               
componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_APPLICATION,
 this.applicationId);
+        
componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_NAME, 
this.name);
+        
componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_APPLICATION,
 this.applicationId);
         JsonArray inputArray = new JsonArray();
         JsonObject inputObject;
         for (WSComponentApplicationParameter inputParameter : 
this.inputParameters) {
@@ -182,12 +184,12 @@ public class WSComponentApplication {
             
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DESCRIPTION, 
inputParameter.getDescription());
             inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_NAME, 
inputParameter.getName());
             
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DEFAULT_VALUE, 
inputParameter.getDefaultValue());
-            
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE,  
inputParameter.getType().toString());
-                       
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER, 
inputParameter.getInputOrder());
-                       if (inputParameter.getApplicationArgument() != null) {
-                               
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT, 
inputParameter.getApplicationArgument());
-                       }
-                       inputArray.add(inputObject);
+            
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE, 
inputParameter.getType().toString());
+            
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER, 
inputParameter.getInputOrder());
+            if (inputParameter.getApplicationArgument() != null) {
+                
inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT, 
inputParameter.getApplicationArgument());
+            }
+            inputArray.add(inputObject);
         }
         componentObject.add(WorkflowConstants.APPLICATION_INPUT, inputArray);
 
@@ -195,90 +197,94 @@ public class WSComponentApplication {
         JsonObject outputObject;
         for (WSComponentApplicationParameter outputParameter : 
this.outputParameters) {
             outputObject = new JsonObject();
-                       
outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DESCRIPTION, 
outputParameter.getDescription());
-                       
outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_NAME, 
outputParameter.getName());
-                       
outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE, 
outputParameter.getType().toString());
-                       outputArray.add(outputObject);
+            
outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DESCRIPTION, 
outputParameter.getDescription());
+            outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_NAME, 
outputParameter.getName());
+            
outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE, 
outputParameter.getType().toString());
+            outputArray.add(outputObject);
         }
-               componentObject.add(WorkflowConstants.APPLICATION_OUTPUT, 
outputArray);
+        componentObject.add(WorkflowConstants.APPLICATION_OUTPUT, outputArray);
 
         return componentObject;
     }
 
     public WSComponentApplication(ApplicationInterfaceDescription application) 
{
-               setApplicationId(application.getApplicationInterfaceId());
-               setName(application.getApplicationName());
-               setDescription(application.getApplicationDescription());
-                
+        setApplicationId(application.getApplicationInterfaceId());
+        setName(application.getApplicationName());
+        setDescription(application.getApplicationDescription());
+
         List<InputDataObjectType> applicationInputs = 
application.getApplicationInputs();
         for (InputDataObjectType inputDataObjectType : applicationInputs) {
-                       addInputParameter(new 
WSComponentApplicationParameter(inputDataObjectType.getName(), 
inputDataObjectType.getType(),
-                                       
inputDataObjectType.getUserFriendlyDescription(), 
inputDataObjectType.getValue(),
-                                       
inputDataObjectType.getApplicationArgument(), 
inputDataObjectType.getInputOrder()));
-               }
+            addInputParameter(new 
WSComponentApplicationParameter(inputDataObjectType.getName(), 
inputDataObjectType.getType(),
+                    inputDataObjectType.getUserFriendlyDescription(), 
inputDataObjectType.getValue(),
+                    inputDataObjectType.getApplicationArgument(), 
inputDataObjectType.getInputOrder()));
+        }
 
         List<OutputDataObjectType> applicationOutputs = 
application.getApplicationOutputs();
         for (OutputDataObjectType outputDataObjectType : applicationOutputs) {
-                       addOutputParameter(new 
WSComponentApplicationParameter(outputDataObjectType.getName(),
-                                       outputDataObjectType.getType() 
,outputDataObjectType.getName(), outputDataObjectType.getValue()));
-               }
-       }
-       
-       @XmlAttribute (required = true, name = "application")
-       public String getApplicationId() {
-               return applicationId;
-       }
-       public void setApplicationId(String applicationId) {
-               this.applicationId = applicationId;
-       }
-       @XmlAttribute (required = true)
-       public String getName() {
-               return name;
-       }
-       public void setName(String name) {
-               this.name = name;
-       }
-       
-//     @XmlElementWrapper(name = "Input")
-       @XmlElement(name = "Input")
-       public List<WSComponentApplicationParameter> getInputParameters() {
-               return inputParameters;
-       }
-       
-       public void setInputParameters(
-                       List<WSComponentApplicationParameter> inputParameters) {
-               this.inputParameters = inputParameters;
-       }
-       
-       @XmlElement(name = "Output")
-       public List<WSComponentApplicationParameter> getOutputParameters() {
-               return outputParameters;
-       }
-       public void setOutputParameters(
-                       List<WSComponentApplicationParameter> outputParameters) 
{
-               this.outputParameters = outputParameters;
-       }
-       
-       public void addInputParameter(WSComponentApplicationParameter 
inputParameter){
-               if (inputParameters==null){
-                       inputParameters = new 
ArrayList<WSComponentApplicationParameter>();
-               }
-               inputParameters.add(inputParameter);
-       }
-       
-       public void addOutputParameter(WSComponentApplicationParameter 
outputParameter){
-               if (outputParameters==null){
-                       outputParameters = new 
ArrayList<WSComponentApplicationParameter>();
-               }
-               outputParameters.add(outputParameter);
-       }
-       
-       @XmlAttribute (required = false)
-       public String getDescription() {
-               return description;
-       }
-
-       public void setDescription(String description) {
-               this.description = description;
-       }
+            addOutputParameter(new 
WSComponentApplicationParameter(outputDataObjectType.getName(),
+                    outputDataObjectType.getType(), 
outputDataObjectType.getName(), outputDataObjectType.getValue()));
+        }
+    }
+
+    @XmlAttribute(required = true, name = "application")
+    public String getApplicationId() {
+        return applicationId;
+    }
+
+    public void setApplicationId(String applicationId) {
+        this.applicationId = applicationId;
+    }
+
+    @XmlAttribute(required = true)
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    // @XmlElementWrapper(name = "Input")
+    @XmlElement(name = "Input")
+    public List<WSComponentApplicationParameter> getInputParameters() {
+        return inputParameters;
+    }
+
+    public void setInputParameters(
+            List<WSComponentApplicationParameter> inputParameters) {
+        this.inputParameters = inputParameters;
+    }
+
+    @XmlElement(name = "Output")
+    public List<WSComponentApplicationParameter> getOutputParameters() {
+        return outputParameters;
+    }
+
+    public void setOutputParameters(
+            List<WSComponentApplicationParameter> outputParameters) {
+        this.outputParameters = outputParameters;
+    }
+
+    public void addInputParameter(WSComponentApplicationParameter 
inputParameter) {
+        if (inputParameters == null) {
+            inputParameters = new ArrayList<WSComponentApplicationParameter>();
+        }
+        inputParameters.add(inputParameter);
+    }
+
+    public void addOutputParameter(WSComponentApplicationParameter 
outputParameter) {
+        if (outputParameters == null) {
+            outputParameters = new 
ArrayList<WSComponentApplicationParameter>();
+        }
+        outputParameters.add(outputParameter);
+    }
+
+    @XmlAttribute(required = false)
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentRegistry.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentRegistry.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentRegistry.java
index e9d4efd..976a777 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentRegistry.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentRegistry.java
@@ -36,6 +36,8 @@ import 
org.apache.airavata.workflow.model.component.ComponentRegistryException;
 import 
org.apache.airavata.workflow.model.component.system.SubWorkflowComponent;
 import org.apache.airavata.workflow.model.component.url.URLComponentReference;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import xsul.wsdl.WsdlDefinitions;
 import xsul.wsdl.WsdlException;
 import xsul.wsdl.WsdlResolver;
@@ -47,6 +49,7 @@ public class WSComponentRegistry extends ComponentRegistry {
     private Map<String, Component> componentMap;
 
     private ComponentReference treeLeaf;
+    private static final Logger log = 
LoggerFactory.getLogger(WSComponentRegistry.class);
 
     /**
      * Create a WSComponentRegistry
@@ -73,9 +76,9 @@ public class WSComponentRegistry extends ComponentRegistry {
 //        } catch (ComponentException e) {
 //            e.printStackTrace();
         } catch (WsdlException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         } catch (URISyntaxException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
 
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java
index d4dcac8..42ba184 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java
@@ -45,6 +45,8 @@ import org.apache.airavata.workflow.model.graph.ws.WSGraph;
 import org.apache.airavata.workflow.model.utils.WorkflowConstants;
 import org.apache.airavata.workflow.model.utils.ApplicationVersion;
 import org.apache.airavata.workflow.model.wf.Workflow;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.xmlpull.infoset.XmlComment;
 import org.xmlpull.infoset.XmlElement;
 import org.xmlpull.infoset.XmlNamespace;
@@ -120,6 +122,7 @@ public class WorkflowWSDL {
     private QName portTypeQName;
 
     private Map<QName, PartnerLinkRole> partnerLinkRoleMap;
+    private static final Logger log = 
LoggerFactory.getLogger(WorkflowWSDL.class);
 
     /**
      * Constructs a WorkflowWsdl.
@@ -332,7 +335,7 @@ public class WorkflowWSDL {
             try {
                 annotation.addElement(XMLUtil.deepClone(appinfo));
             } catch (UtilsException e) {
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
 
@@ -375,7 +378,7 @@ public class WorkflowWSDL {
             try {
                 annotation.addElement(XMLUtil.deepClone(appinfo));
             } catch (UtilsException e) {
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
 
@@ -394,7 +397,7 @@ public class WorkflowWSDL {
                 try {
                     valueElement = XMLUtil.deepClone((XmlElement) value);
                 } catch (UtilsException e) {
-                    e.printStackTrace();
+                    log.error(e.getMessage(), e);
                 }
                 XmlElement annotation = element.element(null, 
WSConstants.ANNOTATION_TAG, true);
                 XmlElement defaultElement = 
annotation.addElement(WSComponentPort.DEFAULT);
@@ -519,7 +522,7 @@ public class WorkflowWSDL {
                 return new QName(paramType.getNamespaceURI(), 
paramType.getLocalPart(), namespace.getPrefix());
             }
         } catch (UtilsException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
         return null;
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/impl/NodeImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/impl/NodeImpl.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/impl/NodeImpl.java
index 6c5fd75..f709fc7 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/impl/NodeImpl.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/impl/NodeImpl.java
@@ -815,7 +815,7 @@ public abstract class NodeImpl implements Node {
                        try {
                                o.nodeUpdated(type);
                        } catch (Exception e) {
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
                        }
                }
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/ParameterNode.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/ParameterNode.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/ParameterNode.java
index 42aaabb..b819e4f 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/ParameterNode.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/ParameterNode.java
@@ -37,6 +37,8 @@ import org.apache.airavata.workflow.model.graph.Graph;
 import org.apache.airavata.workflow.model.graph.GraphException;
 import org.apache.airavata.workflow.model.graph.GraphSchema;
 import org.apache.airavata.workflow.model.graph.Port;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.xmlpull.infoset.XmlElement;
 import org.xmlpull.infoset.XmlNamespace;
 
@@ -52,6 +54,8 @@ abstract public class ParameterNode extends SystemNode {
 
     private boolean configured;
 
+    private static final Logger log = 
LoggerFactory.getLogger(ParameterNode.class);
+
     /**
      * Type of the parameter (e.g. xsd:string, xsd:int)
      */
@@ -166,7 +170,7 @@ abstract public class ParameterNode extends SystemNode {
         try {
             this.metadata = XMLUtil.deepClone(metadata);
         } catch (UtilsException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
 
         // Reformat
@@ -328,7 +332,7 @@ abstract public class ParameterNode extends SystemNode {
             try {
                 metadataElement.addChild(XMLUtil.deepClone(this.metadata));
             } catch (UtilsException e) {
-                e.printStackTrace();
+                log.error(e.getMessage(), e);
             }
         }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/ws/WSNode.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/ws/WSNode.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/ws/WSNode.java
index 3894a0e..372ac4f 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/ws/WSNode.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/ws/WSNode.java
@@ -34,6 +34,8 @@ import 
org.apache.airavata.workflow.model.graph.GraphException;
 import org.apache.airavata.workflow.model.graph.GraphSchema;
 import org.apache.airavata.workflow.model.graph.impl.NodeImpl;
 import org.apache.airavata.workflow.model.graph.util.GraphUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.xmlpull.infoset.XmlElement;
 
 public class WSNode extends NodeImpl implements ForEachExecutableNode{
@@ -44,6 +46,7 @@ public class WSNode extends NodeImpl implements 
ForEachExecutableNode{
 
     protected String operationName;
 
+    private static final Logger log = LoggerFactory.getLogger(WSNode.class);
     /**
      * Constructs a WsdlNode.
      * 
@@ -159,7 +162,7 @@ public class WSNode extends NodeImpl implements 
ForEachExecutableNode{
         try {
                        setComponent(new WSComponent(application));
                } catch (ComponentException e) {
-                       e.printStackTrace();
+            log.error(e.getMessage(), e);
                }
 //        XmlElement wsdlElement = nodeElement.element(null, 
GraphSchema.NODE_WSDL_QNAME_TAG);
 //        if (wsdlElement != null) {
@@ -187,7 +190,7 @@ public class WSNode extends NodeImpl implements 
ForEachExecutableNode{
         try {
             setComponent(new WSComponent(application));
         } catch (ComponentException e) {
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
     }
    

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/ode/ODEWSDLTransformer.java
----------------------------------------------------------------------
diff --git 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/ode/ODEWSDLTransformer.java
 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/ode/ODEWSDLTransformer.java
index 6daf51d..5998950 100644
--- 
a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/ode/ODEWSDLTransformer.java
+++ 
b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/ode/ODEWSDLTransformer.java
@@ -35,6 +35,8 @@ import org.apache.airavata.common.utils.WSDLUtil;
 import org.apache.airavata.workflow.model.exceptions.WorkflowRuntimeException;
 import org.apache.airavata.workflow.model.gpel.DSCUtil;
 import org.apache.airavata.workflow.model.utils.WorkflowConstants;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.xmlpull.infoset.XmlBuilderException;
 import org.xmlpull.infoset.XmlInfosetBuilder;
 import org.xmlpull.infoset.XmlNamespace;
@@ -51,6 +53,7 @@ import xsul5.wsdl.WsdlService;
 
 public class ODEWSDLTransformer {
 
+    private static final Logger log = 
LoggerFactory.getLogger(ODEWSDLTransformer.class);
     /**
      * SCHEMA_LOCATION_URI
      */
@@ -332,8 +335,7 @@ public class ODEWSDLTransformer {
                 }
             }
         } catch (XmlBuilderException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
+            log.error(e.getMessage(), e);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/config/ConfigurationManager.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/config/ConfigurationManager.java
 
b/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/config/ConfigurationManager.java
index 0df388d..004a98c 100644
--- 
a/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/config/ConfigurationManager.java
+++ 
b/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/config/ConfigurationManager.java
@@ -24,9 +24,11 @@ package org.apache.airavata.wsmg.commons.config;
 
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class ConfigurationManager {
-
+    protected static final Logger logger = 
LoggerFactory.getLogger(ConfigurationManager.class);
 //    protected Properties configurations = new Properties();
     
 //    public ConfigurationManager(String configFileName) {
@@ -37,12 +39,12 @@ public class ConfigurationManager {
 //        }
 //    }
 
-    public String getConfig(String configName) {
+    public String getConfig(String configName) throws Exception {
         try {
                        return ServerSettings.getSetting(configName);
                } catch (ApplicationSettingsException e) {
-                       e.printStackTrace();
-                       return null;
+            logger.error(e.getMessage(), e);
+            throw new Exception(e.getMessage(), e);
                }
     }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/storage/JdbcStorage.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/storage/JdbcStorage.java
 
b/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/storage/JdbcStorage.java
index c24ed19..03c4a0a 100644
--- 
a/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/storage/JdbcStorage.java
+++ 
b/modules/ws-messenger/commons/src/main/java/org/apache/airavata/wsmg/commons/storage/JdbcStorage.java
@@ -92,14 +92,14 @@ public class JdbcStorage {
         closeConnection(conn);
     }
 
-    public Connection connect() {
+    public Connection connect() throws SQLException{
 
         Connection conn = null;
         try {
             conn = connectionPool.getConnection();
         } catch (SQLException e) {
-            e.printStackTrace();
             log.error(e.getMessage(), e);
+            throw new SQLException(e);
         }
         return conn;
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
 
b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
index 7390967..1c20cf8 100644
--- 
a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
+++ 
b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/EventDataRepository.java
@@ -111,13 +111,13 @@ public class EventDataRepository implements TableModel, 
BoundedRangeModel {
         this.tableModelChangeEvent = new ChangeEvent(this); // We only need 
one.
         this.events = new ArrayList<EventData>();
     }
-    public void addEvent(XmlElement message) {
+    public void addEvent(XmlElement message) throws Exception {
        addEvent(new EventData(message));
     }
     /**
-     * @param message
+     * @param event
      */
-    public void addEvent(EventData event) {
+    public void addEvent(EventData event) throws Exception {
         // no need the check for not null because second clause is evaluated 
only if
         // not null
         if (this.filter == null || this.filter.isAcceptable(event)) {
@@ -143,50 +143,50 @@ public class EventDataRepository implements TableModel, 
BoundedRangeModel {
         }
 
     }
-    public void triggerListenerForPreMonitorStart() {
+    public void triggerListenerForPreMonitorStart() throws Exception {
                for (EventDataListener listener : getMonitorEventListerners()) {
                        try {
                                listener.monitoringPreStart();
                        } catch (Exception e) {
-                               //just in case
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
                }
        }
     
-    public void triggerListenerForPostMonitorStart() {
+    public void triggerListenerForPostMonitorStart() throws Exception{
                for (EventDataListener listener : getMonitorEventListerners()) {
                        try {
                                listener.monitoringPostStart();
                        } catch (Exception e) {
-                               //just in case
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
                }
        }
     
-    public void triggerListenerForPreMonitorStop() {
+    public void triggerListenerForPreMonitorStop() throws Exception {
                for (EventDataListener listener : getMonitorEventListerners()) {
                        try {
                                listener.monitoringPreStop();
                        } catch (Exception e) {
-                               //just in case
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
                }
        }
     
-    public void triggerListenerForPostMonitorStop() {
+    public void triggerListenerForPostMonitorStop() throws Exception {
                for (EventDataListener listener : getMonitorEventListerners()) {
                        try {
                                listener.monitoringPostStop();
                        } catch (Exception e) {
-                               //just in case
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
                }
        }
-       private void triggerListenerForMonitorEvent(EventData event) {
+       private void triggerListenerForMonitorEvent(EventData event) throws 
Exception{
                for (EventDataListener listener : getMonitorEventListerners()) {
                        try {
                                listener.notify(this, event);
@@ -196,8 +196,8 @@ public class EventDataRepository implements TableModel, 
BoundedRangeModel {
                                        listener.onFail(event);
                                }
                        } catch (Exception e) {
-                               //just in case
-                               e.printStackTrace();
+                               logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
                }
        }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
 
b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
index 72fdc81..0666bd1 100644
--- 
a/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
+++ 
b/modules/ws-messenger/message-monitor/src/main/java/org/apache/airavata/ws/monitor/Monitor.java
@@ -94,7 +94,7 @@ public class Monitor extends EventProducer {
     /**
      * @throws MonitorException
      */
-    public synchronized void start() throws MonitorException {
+    public synchronized void start() throws Exception {
        
        //Make sure currently we are not doing any monitoring
         stop();
@@ -139,7 +139,10 @@ public class Monitor extends EventProducer {
                            this.wsmgClient = null;
                            
getEventDataRepository().triggerListenerForPostMonitorStop();
                        }
-               } finally{
+               } catch (Exception e) {
+            logger.error(e.getMessage(), e);
+            throw new MonitorException(e.getMessage(), e);
+        } finally{
                monitoringCompleted=true;
                }
     }
@@ -153,8 +156,8 @@ public class Monitor extends EventProducer {
                public void run() {
                        try {
                                Monitor.this.start();
-                               } catch (MonitorException e) {
-                                       e.printStackTrace();
+                               } catch (Exception e) {
+                    logger.error(e.getMessage(), e);
                                }
                }
        }.start();
@@ -212,7 +215,11 @@ public class Monitor extends EventProducer {
             System.out.println(XMLUtil.xmlElementToString(event));
         }
         for (String key : keys) {
-            this.eventDataMap.get(key).addEvent(eventData);
+            try {
+                this.eventDataMap.get(key).addEvent(eventData);
+            } catch (Exception e) {
+                logger.error(e.getMessage(), e);
+            }
         }
     }
 
@@ -246,12 +253,13 @@ public class Monitor extends EventProducer {
     /**
      * Wait until the monitoring is completed
      */
-    public void waitForCompletion(){
+    public void waitForCompletion() throws Exception {
        while(!monitoringCompleted && !monitoringFailed){
                try {
                                Thread.sleep(100);
                        } catch (InterruptedException e) {
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
+                throw new Exception(e.getMessage(), e);
                        }
        }
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/messagebox/src/main/java/org/apache/airavata/wsmg/msgbox/MsgBoxServiceLifeCycle.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/messagebox/src/main/java/org/apache/airavata/wsmg/msgbox/MsgBoxServiceLifeCycle.java
 
b/modules/ws-messenger/messagebox/src/main/java/org/apache/airavata/wsmg/msgbox/MsgBoxServiceLifeCycle.java
index f0a62b4..0876ae9 100644
--- 
a/modules/ws-messenger/messagebox/src/main/java/org/apache/airavata/wsmg/msgbox/MsgBoxServiceLifeCycle.java
+++ 
b/modules/ws-messenger/messagebox/src/main/java/org/apache/airavata/wsmg/msgbox/MsgBoxServiceLifeCycle.java
@@ -72,7 +72,7 @@ public class MsgBoxServiceLifeCycle implements 
ServiceLifeCycle {
             try {
                 registry.getAiravataManager().unsetMessageBoxURI();
             } catch (AiravataAPIInvocationException e) {
-                e.printStackTrace();
+                logger.error(e.getMessage(), e);
             }
             thread.interrupt();
             try {

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/ws-messenger/messagebox/src/test/java/org/apache/airavata/wsmg/msgbox/InMemoryMessageBoxServer.java
----------------------------------------------------------------------
diff --git 
a/modules/ws-messenger/messagebox/src/test/java/org/apache/airavata/wsmg/msgbox/InMemoryMessageBoxServer.java
 
b/modules/ws-messenger/messagebox/src/test/java/org/apache/airavata/wsmg/msgbox/InMemoryMessageBoxServer.java
index 0ba8d43..0eee964 100644
--- 
a/modules/ws-messenger/messagebox/src/test/java/org/apache/airavata/wsmg/msgbox/InMemoryMessageBoxServer.java
+++ 
b/modules/ws-messenger/messagebox/src/test/java/org/apache/airavata/wsmg/msgbox/InMemoryMessageBoxServer.java
@@ -40,6 +40,7 @@ public class InMemoryMessageBoxServer {
     private static SimpleHTTPServer receiver;
 
     public static int TESTING_PORT = 7630;
+    private static final Logger log = 
LoggerFactory.getLogger(InMemoryMessageBoxServer.class);
 
     public static final String FAILURE_MESSAGE = "Intentional Failure";
 
@@ -149,7 +150,7 @@ public class InMemoryMessageBoxServer {
              serverSocket = new ServerSocket(0);
              serverSocket.close();
         } catch (IOException e) {
-            e.printStackTrace();  //To change body of catch statement use File 
| Settings | File Templates.
+            log.error(e.getMessage(), e);
         }
         return serverSocket.getLocalPort();
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
----------------------------------------------------------------------
diff --git 
a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java 
b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
index 5192a93..0368a6a 100644
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
+++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
@@ -55,8 +55,7 @@ public class XBaya {
             try {
                 
this.engine.getGUI().getErrorWindow().error(ErrorMessages.UNEXPECTED_ERROR, e);
             } catch (Throwable t) {
-                // Cannot do anything
-                e.printStackTrace();
+                logger.error(e.getMessage(), e);
             }
         } catch (Error e) {
             logger.error(e.getMessage(), e);
@@ -64,7 +63,7 @@ public class XBaya {
                 
this.engine.getGUI().getErrorWindow().error(ErrorMessages.UNEXPECTED_ERROR, e);
             } catch (Throwable t) {
                 // Cannot do anything
-                System.out.println(e);
+                logger.error(e.getMessage(), e);
 
             }
         }

http://git-wip-us.apache.org/repos/asf/airavata/blob/98c9a34e/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
----------------------------------------------------------------------
diff --git 
a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
 
b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
index 5e6d364..77a0aa0 100644
--- 
a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
+++ 
b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
@@ -773,7 +773,7 @@ public class XBayaConfiguration extends Observable 
implements Observer {
                                }
                                triggerObservers(getJcrComponentRegistry());
                        } catch (AiravataClientConnectException e) {
-                               e.printStackTrace();
+                logger.error(e.getMessage(), e);
                        }
                }
     }
@@ -831,7 +831,7 @@ public class XBayaConfiguration extends Observable 
implements Observer {
                                try {
                                        listner.executionModeChanged(this);
                                } catch (Exception e) {
-                                       e.printStackTrace();
+                    logger.error(e.getMessage(), e);
                                }
                        }
                }

Reply via email to