Menu

Creation of portlets

2013-06-06
2013-12-19
1 2 3 > >> (Page 1 of 3)
  • Manuel Rodríguez-Pascual

    Hi all,

    I am creating this post following Diego Scardacci instructions. My intention is to create a portlet which submits a group of tasks instead of a single one.

    Diego's information:

    Here you can find the instruction to install the new dev env:
    http://gilda.ct.infn.it/wikimain?p_p_id=54_INSTANCE_t9W0&p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-2&p_p_col_count=1&_54_INSTANCE_t9W0_struts_action=%2Fwiki_display%2Fview&_54_INSTANCE_t9W0_nodeName=Main&_54_INSTANCE_t9W0_title=DevelopmentEnvironment

    The instruction regards the GridEngine v1.4.21. This release doesn't support collection & workflow yet. Instead, you should use the GridEngine v1.5.0. There are some slight changes on the procedure. "

    My response:

    I'm not sure I fully understand, sorry. So I'll go step by step, ok? And if I'm wrong, please correct me

    -> Now I have to develop the portlet locally.

    -> It is possible to do it on a Mac.

    -> I install Liferay and MySQL according to the instructions you just gave me

    ->I assume that, until this point, I have to follow the instructions from the web.

    ->then, wich connector should I use? On the documentation I see

    Download the mysql-connector from http://sourceforge.net/projects/ctsciencegtwys/files/catania-grid-engine/1.4.21/mysql-connector-java-5.1.13.jar/download and copy it in $LIFERAY_HOME/glassfish-3.1.2/domains/domain1/lib/

    but you told me to employ 1.5. What should I do? Where can I get the new version from?

    -> in the LiferayPlugins SDFK I assume that I can follow the steps from the web.

    -> In the Grid Engine section, I have to download GridEngine 1.5 instead of 1.4, ins't it? Where can I get it from?

    -> In this section, are the rest of the steps identical to the described in the web?

    -> is the "VPN sSetup to get access to the eTokenServer" procedure mandatory?

    -> if so, you have to give me some certificate as stated in "n order to get the necessary certificates you have to contact us."

    -> I don't understand the following warning and how it affects me

    "Development #

    WARNING For architectural reasons the constructor of GridEngine object must be declared differently than the portlet code written for the production environment. The constructor must be created with:"

    Thanks for your attention,

    Manuel

     

    Last edit: Manuel Rodríguez-Pascual 2013-06-06
  • Diego Scardaci

    Diego Scardaci - 2013-06-06

    Hi Manuel,
    below my answers:

    -> Now I have to develop the portlet locally.
    Yes

    -> It is possible to do it on a Mac.
    Yes

    -> I install Liferay and MySQL according to the instructions you just gave me
    Yes

    ->I assume that, until this point, I have to follow the instructions from the web.
    Yes

    ->then, wich connector should I use? On the documentation I see

    Download the mysql-connector from http://sourceforge.net/projects/ctsciencegtwys/files/catania-grid-engine/1.4.21/mysql-connector-java-5.1.13.jar/download and copy it in $LIFERAY_HOME/glassfish-3.1.2/domains/domain1/lib/
    

    but you told me to employ 1.5. What should I do? Where can I get the new version from?

    The connector is OK, 1.5 is the GridEngine version.

    -> in the LiferayPlugins SDFK I assume that I can follow the steps from the web.
    Yes

    -> In the Grid Engine section, I have to download GridEngine 1.5 instead of 1.4, ins't it? Where can I get it from?
    For the GridEngine 1.5 setup we will give you specific instruction. We count to send you the instructions by tomorrow

    -> In this section, are the rest of the steps identical to the described in the web?
    You can follow all the instructions on the wiki except the GridEngine section

    -> is the "VPN sSetup to get access to the eTokenServer" procedure mandatory?
    if you want to use the eTokenServer it's mandatory. Otherwise you should manually upload a proxy in your machine and properly modify your portlet code.

    -> if so, you have to give me some certificate as stated in "n order to get the necessary certificates you have to contact us."
    Yes

    -> I don't understand the following warning and how it affects me

    "Development #
    
    WARNING For architectural reasons the constructor of GridEngine object must be declared differently than the portlet code written for the production environment. The constructor must be created with:"
    

    When you work locally, you don't need to configure all the Glassfish env (thread-pool, DB connection, JNDI, etc.). Then, you must create the MultiInfrastructureJobSubmission object using the constructor requirying parameters for the connection DB.

    Let me know if you need more clarification!

    Cheers,
    Diego

     
  • Manuel Rodríguez-Pascual

    It's ok until I reach:

    "Liferay Plugins SDK"
    I download the plugin, ok. And then, what do I do with it? Place it where?

     
  • Mario

    Mario - 2013-06-07

    Hi Manuel,

    in the lib folder of Liferay domain ($LIFERAY_HOME/glassfish-3.1.2/domains/domain1/lib) you have to add also dom4j-1.6.1.jar. You can find this jar file at the link below:

    https://sourceforge.net/projects/dom4j/files/dom4j/1.6.1/

    Ciao.

     
  • Manuel Rodríguez-Pascual

    Hi,

    I followed all the steps, but I keep getting an error when trying to access liferay portal.

    14:51:23,913 ERROR [liferay/scheduler_dispatch-24][JDBCExceptionReporter:234] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1
    14:51:23,924 ERROR [liferay/scheduler_dispatch-24][ParallelDestination:117] Unable to process message {destinationName=liferay/scheduler_dispatch, response=null, responseDestinationName=null, responseId=null, payload=null, values={principalPassword=null, principalName=null, JOB_STATE=com.liferay.portal.kernel.scheduler.JobState@b74ba9, MESSAGE_LISTENER_CLASS_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, RECEIVER_KEY=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener.com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, MESSAGE_LISTENER_UUID=7a64296a-e562-41c4-935e-e9ea741bc6a2, CONTEXT_PATH=, EXCEPTIONS_MAX_SIZE=0, JOB_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, GROUP_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, PORTLET_ID=null, DESTINATION_NAME=liferay/scheduler_dispatch, companyId=0}}
    com.liferay.portal.kernel.messaging.MessageListenerException: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.SQLGrammarException: could not execute query

    Any hint on this?

    I have mysql correctly running and installed. I executed the DBSchema file yoy gave me, except I removed the first line (dropping the previous database) as I did not have a previous one.

    As far as I know I have accomplished every step and did not face any error, everything worked OK.

     
    • Riccardo Bruno

      Riccardo Bruno - 2013-06-10

      You have a too new MySQL version (5.6 if I do remember well). Please downgrade with a version compliant to what depicted in the wiki instructions.

      Regards,
      Riccardo Bruno
      INFN Sez. Catania
      Via S.Sofia, 64
      95123 Catania
      Italy
      Tel. +39-095-378-5517
      Fax. +39-095-378-5518
      Skype. ct-brunor

      On 07/giu/2013, at 16:55, Manuel Rodríguez-Pascual supermanue@users.sf.net wrote:

      Hi,

      I followed all the steps, but I keep getting an error when trying to access liferay portal.

      14:51:23,913 ERROR [liferay/scheduler_dispatch-24][JDBCExceptionReporter:234] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1
      14:51:23,924 ERROR [liferay/scheduler_dispatch-24][ParallelDestination:117] Unable to process message {destinationName=liferay/scheduler_dispatch, response=null, responseDestinationName=null, responseId=null, payload=null, values={principalPassword=null, principalName=null, JOB_STATE=com.liferay.portal.kernel.scheduler.JobState@b74ba9, MESSAGE_LISTENER_CLASS_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, RECEIVER_KEY=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener.com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, MESSAGE_LISTENER_UUID=7a64296a-e562-41c4-935e-e9ea741bc6a2, CONTEXT_PATH=, EXCEPTIONS_MAX_SIZE=0, JOB_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, GROUP_NAME=com.liferay.portlet.blogs.messaging.CheckEntryMessageListener, PORTLET_ID=null, DESTINATION_NAME=liferay/scheduler_dispatch, companyId=0}}
      com.liferay.portal.kernel.messaging.MessageListenerException: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.SQLGrammarException: could not execute query

      Any hint on this?

      I have mysql correctly running and installed. I executed the DBSchema file yoy gave me, except I removed the first line (dropping the previous database) as I did not have a previous one.

      As far as I know I have accomplished every step and did not face any error, everything worked OK.

      Creation of portlets

      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/ctsciencegtwys/discussion/general/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/


      Sg-licence mailing list
      Sg-licence@ct.infn.it
      https://mailman.ct.infn.it/mailman/listinfo/sg-licence

       
  • Diego Scardaci

    Diego Scardaci - 2013-06-10

    Hi Manuel,
    it seems an incompatibility problem of your mysql version.
    Indeed, there is an incompatibility issue between MySQL5.6 and the jdbc-connector.jar provided by the liferay installation. The solution is move MySQL to <5.6.

    Cheers,
    Diego

     
    • Riccardo Bruno

      Riccardo Bruno - 2013-06-10

      Manuel,

      In the case that could be hard for you to downgrade your MySQL, it is possible to overcome this problem, downloading a newer version of mysql-connector.jar than the one described in the wiki. This could solve your problem for the current version of GridEngine for a while, but we cannot ensure you about the the compatibility of further GridEngine releases. In particular, the next incoming GridEngine will make use of hibernate libraries which will present again that problem once installed.

      Regards,
      Riccardo Bruno
      INFN Sez. Catania
      Via S.Sofia, 64
      95123 Catania
      Italy
      Tel. +39-095-378-5517
      Fax. +39-095-378-5518
      Skype. ct-brunor

      On 10/giu/2013, at 20:32, Diego Scardaci dscardaci@users.sf.net wrote:

      Hi Manuel,
      it seems an incompatibility problem of your mysql version.
      Indeed, there is an incompatibility issue between MySQL5.6 and the jdbc-connector.jar provided by the liferay installation. The solution is move MySQL to <5.6.

      Cheers,
      Diego

      Creation of portlets

      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/ctsciencegtwys/discussion/general/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/


      Sg-licence mailing list
      Sg-licence@ct.infn.it
      https://mailman.ct.infn.it/mailman/listinfo/sg-licence

       
  • Diego Scardaci

    Diego Scardaci - 2013-06-10

    Information about the MySQL compatibility added in the wiki page.

    Cheers,
    Diego

     
  • Manuel Rodríguez-Pascual

    Hi all,

    Do you have an available plugin template that submits and controls the execution of more than one task at the same time?

    Thanks for your help,

    Manuel

     
  • Manuel Rodríguez-Pascual

    Hi,

    Hi,

    just a couple of quick questions,

    First, I am trying a simple example to check whether everything is correctly configured,

    http://gilda.ct.infn.it/wikimain?p_p_id=54_INSTANCE_t9W0&p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-2&p_p_col_count=1&_54_INSTANCE_t9W0_struts_action=%2Fwiki_display%2Fview&_54_INSTANCE_t9W0_nodeName=Main&_54_INSTANCE_t9W0_title=MyFirstGridPortlet

    But "MyJob" portlet crashes. Is it normal? Is there anyway of checking for the job status? Do you want me to send you the log or something?

    Also, in a previous question
    '-> is the "VPN sSetup to get access to the eTokenServer" procedure mandatory?
    if you want to use the eTokenServer it's mandatory. Otherwise you should manually upload a proxy in your machine and properly modify your portlet code.'

    which alternative would you recommend me? In case that you recommend me to use my own proxy, how should I modify the portlet to make it work?

    Thanks for your help,

    Manuel

     
    • Liam Thompson

      Liam Thompson - 2013-07-29

      Hi Manuel

      I had to increase the size of the -XX:MaxPermSize=512m and -XX:PermSize=256m from whatever the previous options were as I found that when I tried to load the MyJob portlet on the Liferay homepage, it crashed the Liferay server due to insufficient heap memory (I think). This may be in addition to the update that Diego mentions below.

      Liam

       
  • Diego Scardaci

    Diego Scardaci - 2013-07-16

    Please, check the job status looking inside the DB. We have to do a small update on MyJob to make it compliant with last GridEngine release.
    We'll notify you not yet the update is available.

    For your second question the best option is to use the VPN to get access to the eTokenServer.

    Cheers,
    Diego

     
  • Manuel Rodríguez-Pascual

    Hi Diego,

    In that case, would it be possible to get an access to the VPN? Could you mail me the instructions or whatever is needed?

    I have a parallel portlet ready to test :)

    Thanks,

    Manuel

     
  • Manuel Rodríguez-Pascual

    Just another question regarding Liferay over Mac OS X

    Sometimes, after restarting the server (for example, after a system shutdown) it does not work as expected. Instead, after starting the domain, a page appears with the following message

    "Your server is now running

    To replace this page, overwrite the file index.html in the document root folder of this server. The document root folder for this server is the docroot subdirectory of this server's domain directory.

    To manage a server on the local host with the default administration port, go to the Administration Console.
    "

    which is the default page for the domain and is found at
    /liferay-6.1/glassfish-3.1.2/domains/domain1/docroot7index.html

    The admin page, in port 4848, works as expected.

    It looks like Liferay is just not working, so glassfish just shows the default message. But it should be working, as it was OK just before restarting the server!

    I have tried to reset the domain from the admin page (launghin, and reseting the application from the Applications menu) but it does not work.

    I don't really know where the problem can be, but it makes working with Liferay impossible :(

    Have you experienced a similar issue? Have you got any solution or suggestion? I am sure that it has an easy solution, but I cannot find it anywhere and it really slows down the development process.

    Just for information, my system is:

    Mac Os X 10.6.8
    4 GB RAM
    Intel Core 2 Duo, 2.2 GHz

    Thanks for your help,

    Manuel

     
    • Liam Thompson

      Liam Thompson - 2013-07-23

      Hi Manuel

      The starting and stopping of the Liferay server can be frustrating, sometimes it runs in the background, but is "stopped", and as such I need to search for Java processes running in the background, kill those, and restart the process.

      You can generally check if a domain is running using something like the following. I find using the command line to be more effective in dealing with the intricacies.

      sh /opt/liferay-portal-6.1.1-ce-ga2/glassfish-3.1.2/bin/asadmin list-domains

      Liam

       
  • Manuel Rodríguez-Pascual

    I think that was the error, thanks Liam!

    One more question,

    "submitJobCollection" from class JobCollectionSubmission is declared as private, or that is what I can see in Eclipse (I don't have access to the source code, just the .class).

    However, on the "mi-collection-portlet" that Mario Torrisi sent me me, in line 1338, it is employed as:

    (code has been a bit simplified to make easier to be read)

    JobCollectionSubmission tmpJobCollectionSubmission = new JobCollectionSubmission(collection);
    (...)
    tmpJobCollectionSubmission.submitJobCollection(infrastructuresInfo, portalIPAddress, applicationId);

    So after an "ant clean", the "ant deploy" won't compile the portlet

    compile-java:
    [javac] Compiling 1 source file to /Applications/liferay-6.1/plugins_sdk/portlets/my-collection-portlet/docroot/WEB-INF/classes
    [javac] ----------
    [javac] 1. ERROR in /Applications/liferay-6.1/plugins_sdk/portlets/my-collection-portlet/docroot/WEB-INF/src/it/infn/ct/mi_collection_portlet.java (at line 1338)
    [javac] tmpJobCollectionSubmission.submitJobCollection(infrastructuresInfo,
    [javac] ^^^^^^^^^^^^^^^^^^^
    [javac] The method submitJobCollection(InfrastructureInfo[], String, int) from the type JobCollectionSubmission is not visible
    [javac] ----------
    [javac] 1 problem (1 error)

    Any ideas on this? Am I doing anything wrong?

    Thanks for your help,

    Manuel

     

    Last edit: Manuel Rodríguez-Pascual 2013-07-24
  • Diego Scardaci

    Diego Scardaci - 2013-07-25

    Hi Manuel,
    the right signature of the submitJobCollection method is:
    public void submitJobCollection(InfrastructureInfo[] infrastructures,
    String tcpAddress, int gridInteractionId)

    looking your error it seems you are calling this method only with 2 input parameters:
    "
    the method submitJobCollection(InfrastructureInfo[], String, int) from the type JobCollectionSubmission is not visible
    "

    Cheers,
    Diego

     
  • Manuel Rodríguez-Pascual

    I am calling it with 3 input parameters. In fact the code I posted was from Mario's example:

    tmpJobCollectionSubmission.submitJobCollection(infrastructuresInfo, portalIPAddress, applicationId);

    all having the appropriate variable type.

    InfrastructureInfo[] infrastructuresInfo = ...
    String portalIPAddress = ...
    int applicationId = ...

    Looking at the .class of JobCollectionSubmission, which is part of

    jsaga-job-management-1.5.0.jar

    what I see is:

    // Method descriptor #29
    // Stack: 2, Locals: 2
    public JobCollectionSubmission(it.infn.ct.GridEngine.JobCollection.JobCollection jobCollection);

    / Method descriptor #47
    // Stack: 2, Locals: 5
    public JobCollectionSubmission(java.lang.String dB, java.lang.String dBUser, java.lang.String dBUserPwd, it.infn.ct.GridEngine.JobCollection.JobCollection jobCollection);

    // Method descriptor #62
    // Stack: 7, Locals: 7
    private void submitJobCollection(it.infn.ct.GridEngine.Job.InfrastructureInfo[] infrastructures, java.lang.String tcpAddress, int gridInteractionId);

    // Method descriptor #80
    // Stack: 5, Locals: 3
    private it.infn.ct.GridEngine.Job.InfrastructureInfo getRandomInfrastructure(it.infn.ct.GridEngine.Job.InfrastructureInfo[] infrastructures);

    // Method descriptor #84
    // Stack: 7, Locals: 4
    private it.infn.ct.GridEngine.Job.JSagaJobSubmission createJobSubmissionObject(it.infn.ct.GridEngine.Job.InfrastructureInfo infrastructure, it.infn.ct.GridEngine.JobResubmission.GEJobDescription descr);

    (besides getters, setters and a main method)

    So with the method being private, it raises a compiling error when executing "ant deploy" in my mac.

    Maybe you are compiling it in a different way? Or the method is not private, and this is a problem on my laptop looking inside the .jar? have you employed OS X to compile portlets?

    I am sure that this is a very easy to solve problem, but I don't know how to locate it :(

    Best regards,

    Manuel

     
  • Manuel Rodríguez-Pascual

    Hi,

    I think I nearly have it :)

    After submitting a collection of tasks, this is what I get in the log:

    [#|2013-07-26T11:36:34.452+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=18;_ThreadName=Thread-5;|11:36:34,451 INFO [prottestParallel_portlet:108]
    wmsHostList
    wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.453+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=18;_ThreadName=Thread-5;|11:36:34,452 INFO [prottestParallel_portlet:108]

    enableInfrastructure : 'yes'
    nameInfrastructure   : 'GISELA Latin American Infrastructure'
    acronymInfrastructure: 'GISELA'
    bdiiHost             : 'ldap://top-bdii.grid.unam.mx:2170'
    wmsHosts             : 'wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server'
    pxServerHost         : 'etokenserver.ct.infn.it'
    pxServerPort         : '8082'
    pxRobotId            : '3258454c30c8d5f7c6d4440ff19d2999'
    pxRobotRole          : 'prod.vo.eu-eela.eu'
    pxRobotVO            : 'prod.vo.eu-eela.eu'
    pxRobotRenewalFlag   : 'true'
    pxUserProxy          : 'null'
    softwareTags         : ''|#]
    

    [#|2013-07-26T11:36:34.465+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=271;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JobCollectionSubmission - Infrastructure selected = it.infn.ct.GridEngine.Job.InfrastructureInfo@966d0c
    |#]
    [#|2013-07-26T11:36:34.477+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JobServiceManager - Cannot get JobServices-Dispatcher: javax.naming.NamingException: Lookup failed for 'JobServices-Dispatcher' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: JobServices-Dispatcher not found]
    |#]
    [#|2013-07-26T11:36:34.478+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JobServiceManager - Get local JobServicesDispatcher
    |#]
    [#|2013-07-26T11:36:34.479+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] ERROR JSagaJobSubmission - Cannot get thread-pool: javax.naming.NamingException: Lookup failed for 'GridEngine-Pool' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: GridEngine-Pool not found]
    |#]
    [#|2013-07-26T11:36:34.481+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - JSAGA_HOME:null
    |#]
    [#|2013-07-26T11:36:34.482+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - saga.factory:fr.in2p3.jsaga.impl.SagaFactoryImpl
    |#]
    [#|2013-07-26T11:36:34.520+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - WMS[0]=wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.521+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JSagaJobSubmission - outputPath: ./jobOutput/
    |#]
    [#|2013-07-26T11:36:34.523+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Submitting job in Thread : Thread[submitJob,5,grizzly-kernel]
    |#]
    [#|2013-07-26T11:36:34.523+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - random resource manager error check
    |#]
    [#|2013-07-26T11:36:34.523+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting random resource manager...
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] DEBUG JSagaJobSubmission - WMS selected = wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Resource Manager selected: wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting adaptor name...
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Using adaptor: wms
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting jobService...
    |#]

    And then it repeats one per task:

    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting jobService...
    |#]
    [#|2013-07-26T11:36:34.527+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JobCollectionSubmission - Infrastructure selected = it.infn.ct.GridEngine.Job.InfrastructureInfo@966d0c
    |#]
    [#|2013-07-26T11:36:34.537+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JobServiceManager - Cannot get JobServices-Dispatcher: javax.naming.NamingException: Lookup failed for 'JobServices-Dispatcher' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: JobServices-Dispatcher not found]
    |#]
    [#|2013-07-26T11:36:34.538+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JobServiceManager - Get local JobServicesDispatcher
    |#]
    [#|2013-07-26T11:36:34.538+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] ERROR JSagaJobSubmission - Cannot get thread-pool: javax.naming.NamingException: Lookup failed for 'GridEngine-Pool' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: GridEngine-Pool not found]
    |#]
    [#|2013-07-26T11:36:34.539+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - JSAGA_HOME:null
    |#]
    [#|2013-07-26T11:36:34.539+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - saga.factory:fr.in2p3.jsaga.impl.SagaFactoryImpl
    |#]
    [#|2013-07-26T11:36:34.544+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] DEBUG JSagaJobSubmission - WMS[0]=wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.545+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [http-thread-pool-8080(2)] INFO JSagaJobSubmission - outputPath: ./jobOutput/
    |#]
    [#|2013-07-26T11:36:34.546+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Submitting job in Thread : Thread[submitJob,5,grizzly-kernel]
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - random resource manager error check
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting random resource manager...
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] DEBUG JSagaJobSubmission - WMS selected = wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Resource Manager selected: wms://wms-lb.grid.unam.mx:7443/glite_wms_wmproxy_server
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting adaptor name...
    |#]
    [#|2013-07-26T11:36:34.547+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=273;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Using adaptor: wms
    |#]
    [#|2013-07-26T11:36:34.524+0000|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=272;_ThreadName=Thread-5;|2013-07-26 11:36:34 [submitJob] INFO JSagaJobSubmission - Getting jobService...

    Is it correct?

    How can I know whether my tasks are being executed, their status and output?

    Also, when they are all finished, there is a second step of postprocess of output files and cleaning of temporary files. Where should it be performed?

    Thanks for your help,

    Manuel

     
  • Diego Scardaci

    Diego Scardaci - 2013-07-26

    Hi Manuel,
    you're very close...

    In your testing environment you should use the following constructor to create the MultiInfrastructureJobSubmission object:
    public MultiInfrastructureJobSubmission(String db, String dbUser, String dbUserPwd)

    e.g.:
    MultiInfrastructureJobSubmission multiInfrastructureJobSubmission = new MultiInfrastructureJobSubmission("jdbc:mysql://localhost/userstracking","tracking_user","usertracking");

    when we'll move to the production environment you should change it with the empty constructor:
    public MultiInfrastructureJobSubmission()

    to check the job status and download the output, you can use this patched version of the myjobs portlet:
    MultiInfrastructureJobSubmission multiInfrastructureJobSubmission = new MultiInfrastructureJobSubmission("jdbc:mysql://localhost/userstracking","tracking_user","usertracking");

    Let me know if you need more info.

    Cheers,
    Diego

     
    • Manuel Rodríguez-Pascual

      hi Diego,

      There is a thing I don't understand.

      On the portlet examples that can be found on this web, they employ "MultiInfrastructureJobSubmission". However, in the parallel examples that Mario sent me, there was "GEJobDescription".

      In my portlet I employed GEJobDescription, because I was modifying the portlet from Mario. Now I replaced it with "MultiInfrastructureJobSubmission", but there is a problem.

      ArrayList<GEJobDescription> descriptions = (...)
      JobCollection collection = new JobCollection(appInput.username, appInput.jobIdentifier, "/tmp", descriptions);

      JobCollection needs an ArrayList<GEJobDescription> as input file. If I modify "descriptions" to be a MultiInfrastructureJobSubmission, the code will not compile.

      so what should I do?

       
1 2 3 > >> (Page 1 of 3)

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.