Hi, I got the below error when building from the source in a Windows PC. The integration-test failed.
[INFO] [talledLocalContainer] DriverClassName=org.apache.derby.jdbc.ClientDriver,Url=jdbc:derby://localhos t:1527/persist ent_data;create=true;user=airavata;password=airavata,Username=airavata,Passw ord=airavata,validationQuery=SELECT 1 from C onfiguration,MaxActive=10,MaxIdle=5,MinIdle=2,MaxWait=60000,testWhileIdle=tr ue,testOnBorrow=true [INFO] [talledLocalContainer] 48 airavata_data INFO [Thread-6] openjpa.Runtime - Starting OpenJPA 2.2.0 [INFO] [talledLocalContainer] [ERROR] Error while initializing the Airavata API [INFO] [talledLocalContainer] org.apache.airavata.client.api.exception.AiravataAPIInvocationException: Error while initi alizing the Airavata API [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :64) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :43) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :39) [INFO] [talledLocalContainer] at org.apache.airavata.wsmg.msgbox.MsgBoxServiceLifeCycle$1.run(MsgBoxServiceLi feCycle.j ava:117) [INFO] [talledLocalContainer] Caused by: org.apache.airavata.client.api.exception.AiravataAPIInvocationException: Error while initializing the Airavata API [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.initialize(AiravataClient.java:163 ) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :61) [INFO] [talledLocalContainer] ... 3 more [INFO] [talledLocalContainer] Caused by: <openjpa-2.2.0-r422266:1244990 fatal general error> org.apache.openjpa.persiste nce.PersistenceException: Cannot create PoolableConnectionFactory (Schema 'AIRAVATA' does not exist) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.sql.DBDictionaryFactory.newDBDictionary(DBDictionary Factory.j ava:102) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDBDictionaryInstance(J DBCConfig urationImpl.java:603) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.meta.MappingRepository.endConfiguration(MappingRepos itory.jav a:1510) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations. java:518) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations. java:443) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:104) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(MetaDataReposito ryValue.j ava:68) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstan ce(OpenJP AConfigurationImpl.java:968) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.OpenJPAConfigurationImpl.getMetaDataRepositoryInstan ce(OpenJP AConfigurationImpl.java:959) [INFO] [talledLocalContainer] at org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerF actory.ja va:638) [INFO] [talledLocalContainer] at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFact ory.java: 203) [INFO] [talledLocalContainer] at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBroker Factory.j ava:156) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:227) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:154) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:60) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getEntityManager( ResourceU tils.java:68) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getConfigurations (Resource Utils.java:201) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getConfiguration( ResourceU tils.java:223) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.impl.AiravataJPARegistry.getCon figuratio n(AiravataJPARegistry.java:226) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.impl.AiravataJPARegistry.initia lize(Aira vataJPARegistry.java:159) [INFO] [talledLocalContainer] at org.apache.airavata.registry.api.AiravataRegistryFactory.getRegistry(Airavat aRegistry Factory.java:81) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.getRegistry(AiravataClient.java:21 6) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.createConfig(AiravataClient.java:1 12) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.initialize(AiravataClient.java:144 ) [INFO] [talledLocalContainer] ... 4 more [INFO] [talledLocalContainer] Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFac tory (Schema 'AIRAVATA' does not exist) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(Basi cDataSour ce.java:1549) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.jav a:1388) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1 044) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.jdbc.DelegatingDataSource.getConnection(DelegatingDat aSource.j ava:110) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDat aSource.j ava:87) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.sql.DBDictionaryFactory.newDBDictionary(DBDictionary Factory.j ava:91) [INFO] [talledLocalContainer] ... 28 more [INFO] [talledLocalContainer] Caused by: java.sql.SQLSyntaxErrorException: Schema 'AIRAVATA' does not exist [INFO] [talledLocalContainer] at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.executeQuery(Unknown Source) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement .java:208 ) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.PoolableConnectionFactory.validateConnection(Poolabl eConnecti onFactory.java:658) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataS ource.jav a:1558) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(Basi cDataSour ce.java:1545) [INFO] [talledLocalContainer] ... 33 more [INFO] [talledLocalContainer] Caused by: org.apache.derby.client.am.SqlException: Schema 'AIRAVATA' does not exist [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.completeSqlca(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unkn own Sourc e) [INFO] [talledLocalContainer] at org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.flowExecute(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.executeQueryX(Unknown Source) [INFO] [talledLocalContainer] ... 38 more [INFO] [talledLocalContainer] [ERROR] Error while initializing the Airavata API [INFO] [talledLocalContainer] org.apache.airavata.client.api.exception.AiravataAPIInvocationException: Error while initi alizing the Airavata API [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :64) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :43) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :39) [INFO] [talledLocalContainer] at org.apache.airavata.wsmg.broker.BrokerServiceLifeCycle$1.run(BrokerServiceLi feCycle.j ava:156) [INFO] [talledLocalContainer] Caused by: org.apache.airavata.client.api.exception.AiravataAPIInvocationException: Error while initializing the Airavata API [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.initialize(AiravataClient.java:163 ) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataAPIFactory.getAPI(AiravataAPIFactory.java :61) [INFO] [talledLocalContainer] ... 3 more [INFO] [talledLocalContainer] Caused by: <openjpa-2.2.0-r422266:1244990 fatal general error> org.apache.openjpa.persiste nce.PersistenceException: Cannot create PoolableConnectionFactory (Schema 'AIRAVATA' does not exist) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.sql.DBDictionaryFactory.newDBDictionary(DBDictionary Factory.j ava:102) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDBDictionaryInstance(J DBCConfig urationImpl.java:603) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.meta.MappingRepository.endConfiguration(MappingRepos itory.jav a:1510) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations. java:518) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations. java:443) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:104) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(MetaDataReposito ryValue.j ava:68) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstan ce(OpenJP AConfigurationImpl.java:968) [INFO] [talledLocalContainer] at org.apache.openjpa.conf.OpenJPAConfigurationImpl.getMetaDataRepositoryInstan ce(OpenJP AConfigurationImpl.java:959) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getMappingRepositoryInsta nce(JDBCC onfigurationImpl.java:711) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBro kerFactor y.java:140) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBro kerFactor y.java:164) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFac tory.java :122) [INFO] [talledLocalContainer] at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFact ory.java: 209) [INFO] [talledLocalContainer] at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBroker Factory.j ava:156) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:227) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:154) [INFO] [talledLocalContainer] at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager( EntityMan agerFactoryImpl.java:60) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getEntityManager( ResourceU tils.java:68) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getConfigurations (Resource Utils.java:201) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.ResourceUtils.getConfiguration( ResourceU tils.java:223) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.impl.AiravataJPARegistry.getCon figuratio n(AiravataJPARegistry.java:226) [INFO] [talledLocalContainer] at org.apache.airavata.persistance.registry.jpa.impl.AiravataJPARegistry.initia lize(Aira vataJPARegistry.java:159) [INFO] [talledLocalContainer] at org.apache.airavata.registry.api.AiravataRegistryFactory.getRegistry(Airavat aRegistry Factory.java:81) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.getRegistry(AiravataClient.java:21 6) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.createConfig(AiravataClient.java:1 12) [INFO] [talledLocalContainer] at org.apache.airavata.client.AiravataClient.initialize(AiravataClient.java:144 ) [INFO] [talledLocalContainer] ... 4 more [INFO] [talledLocalContainer] Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFac tory (Schema 'AIRAVATA' does not exist) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(Basi cDataSour ce.java:1549) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.jav a:1388) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1 044) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.jdbc.DelegatingDataSource.getConnection(DelegatingDat aSource.j ava:110) [INFO] [talledLocalContainer] at org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDat aSource.j ava:87) [INFO] [talledLocalContainer] at org.apache.openjpa.jdbc.sql.DBDictionaryFactory.newDBDictionary(DBDictionary Factory.j ava:91) [INFO] [talledLocalContainer] ... 31 more [INFO] [talledLocalContainer] Caused by: java.sql.SQLSyntaxErrorException: Schema 'AIRAVATA' does not exist [INFO] [talledLocalContainer] at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.executeQuery(Unknown Source) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement .java:208 ) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.PoolableConnectionFactory.validateConnection(Poolabl eConnecti onFactory.java:658) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataS ource.jav a:1558) [INFO] [talledLocalContainer] at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(Basi cDataSour ce.java:1545) [INFO] [talledLocalContainer] ... 36 more [INFO] [talledLocalContainer] Caused by: org.apache.derby.client.am.SqlException: Schema 'AIRAVATA' does not exist [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.completeSqlca(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unkn own Sourc e) [INFO] [talledLocalContainer] at org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.flowExecute(Unknown Source) [INFO] [talledLocalContainer] at org.apache.derby.client.am.Statement.executeQueryX(Unknown Source) [INFO] [talledLocalContainer] ... 41 more - Viknes -----Original Message----- From: Saminda Wijeratne [mailto:[email protected]] Sent: Tuesday, June 18, 2013 12:43 PM To: [email protected] Subject: Re: [TESTING] Apache Airavata 0.8 RC2 Tested the following using the standard airavata server distribution and a deployment of airavata webapps in a tomcat 7.0.26 distribution, 5 & 10 minute tutorial API client samples works Airavata Client libraries verified for using API Successfully built source pack with integration tests but *without*unit tests. When the source packs were built with tests at airavata-jpa-registry build it waits with the following... Tue Jun 18 12:28:15 EDT 2013 : Apache Derby Network Server - 10.9.1.0 - (1344872) started and ready to accept connections on port 20000 Running a query to test the database tables existence. Tue Jun 18 12:29:15 EDT 2013 : Could not listen on port 20000 on host 127.0.0.1: java.net.BindException: Address already in use Running a query to test the database tables existence. Tue Jun 18 12:30:16 EDT 2013 : Could not listen on port 20000 on host 127.0.0.1: java.net.BindException: Address already in use Running a query to test the database tables existence. Tue Jun 18 12:31:16 EDT 2013 : Could not listen on port 20000 on host 127.0.0.1: java.net.BindException: Address already in use Running a query to test the database tables existence. It is also worth mentioning that when deployed in tomcat I was not able to run the 10 min tutorial without having considerable amount of free memory in the machine. [ERROR] Error while executing provider org.apache.airavata.gfac.provider.impl.LocalProvider functionality. org.apache.airavata.gfac.GFacException: Error while executing provider org.apache.airavata.gfac.provider.impl.LocalProvider functionality. at org.apache.airavata.gfac.GFacAPI.executeProvider(GFacAPI.java:94) at org.apache.airavata.gfac.GFacAPI.schedule(GFacAPI.java:71) at org.apache.airavata.gfac.GFacAPI.submitJob(GFacAPI.java:53) at org.apache.airavata.xbaya.invoker.EmbeddedGFacInvoker.invoke(EmbeddedGFacInv oker.java:349) at org.apache.airavata.xbaya.interpretor.WorkflowInterpreter.handleWSComponent( WorkflowInterpreter.java:710) at org.apache.airavata.xbaya.interpretor.WorkflowInterpreter.executeDynamically (WorkflowInterpreter.java:530) at org.apache.airavata.xbaya.interpretor.WorkflowInterpreter.access$000(Workflo wInterpreter.java:89) at org.apache.airavata.xbaya.interpretor.WorkflowInterpreter$1.run(WorkflowInte rpreter.java:197) Caused by: org.apache.airavata.gfac.provider.GFacProviderException: Cannot run program "/bin/echo" (in directory "/tmp/echo_app_Tue_Jun_18_11_57_29_EDT_2013_c0b9bfcc-0936-48b3-9b38-b730920f c427"): java.io.IOException: error=12, Cannot allocate memory at org.apache.airavata.gfac.provider.impl.LocalProvider.execute(LocalProvider.j ava:121) at org.apache.airavata.gfac.GFacAPI.executeProvider(GFacAPI.java:92) ... 7 more Caused by: java.io.IOException: Cannot run program "/bin/echo" (in directory "/tmp/echo_app_Tue_Jun_18_11_57_29_EDT_2013_c0b9bfcc-0936-48b3-9b38-b730920f c427"): java.io.IOException: error=12, Cannot allocate memory at java.lang.ProcessBuilder.start(ProcessBuilder.java:460) at org.apache.airavata.gfac.provider.impl.LocalProvider.execute(LocalProvider.j ava:84) ... 8 more Caused by: java.io.IOException: java.io.IOException: error=12, Cannot allocate memory at java.lang.UNIXProcess.<init>(UNIXProcess.java:148) at java.lang.ProcessImpl.start(ProcessImpl.java:65) at java.lang.ProcessBuilder.start(ProcessBuilder.java:453) ... 9 more Saminda On Tue, Jun 18, 2013 at 11:47 AM, Lahiru Gunathilake <[email protected]>wrote: > Done ! > > > On Tue, Jun 18, 2013 at 11:30 AM, Saminda Wijeratne > <[email protected] > >wrote: > > > Hi Lahiru, > > > > Can you include the source packs as well please. > > > > > > > > On Tue, Jun 18, 2013 at 11:23 AM, Chathuri Wimalasena > > <[email protected]>wrote: > > > > > I tested the following scenarios. > > > > > > - 5 mins and 10 mins samples with default derby database and > > > then > with > > > mysql database > > > - Basic functionalities of XBaya (creating applications, > > > creating > > hosts, > > > deleting, registry browser view, importing and exporting from > > registry) > > > - Ran two client samples with mysql (create application and > > > workflow > > run > > > samples) > > > > > > I did not encounter any issues while doing any of the tests. I > > > would > like > > > to suggest a small improvement to workflow run sample. In that > > > echo > > sample > > > we give the input as "ODI Test" but the output we receive is just > "ODI". > > I > > > think we can use a better input value (which does not have a space > > > in between). > > > > > > Regards, > > > Chathuri > > > > > > > > > On Mon, Jun 17, 2013 at 3:05 PM, Lahiru Gunathilake > > > <[email protected] > > > >wrote: > > > > > > > Hi Devs, > > > > > > > > Please find the RC2 packs here[1]. If you find any blockers > > > > please > > raise > > > a > > > > jira and respond to this email. > > > > > > > > [1]https://dist.apache.org/repos/dist/dev/airavata/0.8/RC2 > > > > Regards > > > > > > > > -- > > > > System Analyst Programmer > > > > PTI Lab > > > > Indiana University > > > > > > > > > > > > > -- > System Analyst Programmer > PTI Lab > Indiana University >
smime.p7s
Description: S/MIME cryptographic signature
