11 Replies Latest reply: May 17, 2012 9:24 AM by rromero RSS

    Widget can't be used

    ShawnPConroy

      I've created a widget based on the Hello World Tutorial and have uploaded the JAR. After installing it's listed in the Plugins on the admin console but it does not display where you should be able to select it to add it to the start page on our instance of Jive. (5.x).

       

      Is there anything you need to do once you've uploaded the JAR and noticed it turned on in Plugins?

       

      JAR and src included.

        • Re: Widget can't be used
          Mandar Tuljapurkar

          In order to create a Widget, the plugin.xml needs a widget element as follows:

           

          <plugin xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

                  xsi:noNamespaceSchemaLocation="http://www.jivesoftware.com/schemas/clearspace/2_5/plugin.xsd">

              <name>Hello CDA</name>

              <description>Greets the user</description>

              <author></author>

              <version>1.0.0</version>

              <minServerVersion>5.0.1</minServerVersion>

              <maxServerVersion>5.0.1</maxServerVersion>

             

            <!-- you will want to change your class name here! -->

            <widget class="HelloCDAWidget" />

            <!--

              <authorURL>

              <pluginURL>

              <databaseKey>

              <databaseVersion>

              <components>

              <css>

              <soy>

              <javascript>

              <widget>

              <macro>

              <urlmapping>

              <sitemesh>

            -->

           

           

          </plugin>

            • Re: Widget can't be used
              rromero

              Hello Shawn,

               

              You get to run the plugin? I am with the same problem as you. I readed the Hello World Widget tutorial and I understand it, but I don't know how I have to mount the file structure...


              If you can help me with these firsts steps I'd appreciate you a lot. I would like to know what file structure it is the correct, How can I prepare the .jar file...


              Thank you very much!


              Best


              Rafa

                • Re: Widget can't be used
                  Jose Luis Romero

                  Hello Shawn and Rafa,

                  I build the project with maven. With this command you create a project with the plugin structure:

                  mvn archetype:create -e -DarchetypeGroupId=com.jivesoftware.maven -DarchetypeArtifactId=maven-jive-plugin-archetype -DarchetypeVersion=5.0.x-SNAPSHOT -DgroupId=com.widget -DartifactId=helloWorld

                   

                  Then I imported the project to eclipse, and with maven, I realize the jar package.

                  You can see these links:

                  https://community.jivesoftware.com/docs/DOC-3547

                  https://community.jivesoftware.com/docs/DOC-3275

                  A greeting.

                    • Re: Widget can't be used
                      rromero

                      Thank you so much Jose Luis!

                       

                      Excuse me, are you from spain?

                       

                      I'll try your recomendations, thank you!

                       

                      I would like to have a sample of the widget of the tutorial, can you attach it please?

                       

                      Thank you again,

                       

                      Best

                       

                      Rafa

                        • Re: Widget can't be used
                          Jose Luis Romero

                          Hi Rafa,

                           

                          Si, soy español.

                          En esta URL tienes ejemplos de plugin: https://svn.jivesoftware.com/svn/dev/repos/jive/plugins/

                          Puedes descargarte cualquiera para ir investigando.

                           

                          Un saludo.

                            • Re: Widget can't be used
                              rromero

                              Hola José Luís!

                               

                              Muchas gracias por tu ayuda, me miraré la página que me comentas e intentaré montar el plugin del tutorial de ejemplo (El de HelloWorld).

                               

                              Ya te comentaré!

                               

                              Muchas gracias por tu ayuda, de verdad!

                               

                              Un saludo!

                                • Re: Widget can't be used
                                  rromero

                                  Hola Jose Luis,

                                   

                                  he estado intentando el de instalar un widget, pero no lo consigo. Te comento los pasos que he seguido:

                                   

                                  Estoy trabajando con una instancia de JiveEducation en una máquina virtual CentOS.

                                   

                                  1. He creado el directorio con el comando que me comentas.
                                  2. Lo he exportado con Eclipse
                                  3. He creado los ficheros que se especifican en Building Widgets
                                  4. He exportado como JAR desde eclipse.
                                  5. He accedido a la Consola de Administración de Jive, y en System/Plugins he añadido el widget.
                                  6. He reiniciado la instancia.

                                   

                                  Hasta aquí todo correcto, el widget me aparece como instalado, pero cuando voy a la configuración de cualquier página, de entre los widgets a elegir, no aparece el mío

                                   

                                  Qué hago mal?

                                   

                                  Muchas gracias de antemano por tu ayuda!

                                   

                                  Saludos

                                    • Re: Widget can't be used
                                      Jose Luis Romero

                                      Hola Rafa,

                                       

                                      Sube el .jar para que le pueda echar un vistazo y el código java del widget.

                                       

                                      Un saludo.

                                        • Re: Widget can't be used
                                          rromero

                                          Muchas gracias por tu ayuda Jose Luis!

                                           

                                          Te adjunto el fichero .jar. En cuanto al codigo, he utilizado exactamente lo que pone en Building Widgets

                                           

                                          No se si es necsario hacer algo en la pagina de la consola System/Settings/Widgets. No entiendo para que sirve esta pagina

                                           

                                          Saludos y muchas gracias

                                            • Re: Widget can't be used
                                              Jose Luis Romero

                                              Rafa, si te das cuenta, hay algo que no se ha copiado bien: plugin.xml.

                                              En la carpeta raiz tienes el archivo plugin.xml y en la ruta src\main\plugin\ tienes otro fichero. Este segundo fichero no apunta a tu clase <widget class="com.jivesoftware.clearspace.plugin.example.widget.HelloWorldWidget" />

                                              y que por el contrario, si lo hace el fichero de la raiz.

                                              El fichero src\main\plugin\plugin.xml es el que debe de contener la lógica(actualmente tu fichero raiz).

                                               

                                              Prueba con eso cambio y espero que te funcione.

                                               

                                              Un saludo.

                                                • Re: Widget can't be used
                                                  rromero

                                                  Hola Jose Luis,

                                                   

                                                  he hecho lo que me comentabas pero consigo ver el widget en mi instancia. No da problemas al subirlo pero luego nada. No tendrás por casualidad algún ejemplo HelloWorld funcionando? Dónde más dudas tengo es con el tema de estructura de ficheros..

                                                   

                                                  Por otro lado tengo dudas que no quedan cubiertas en Building Widgets.

                                                   

                                                  Una vez creo el proyecto con Maven y lo exporto en Eclipse, dónde coloco los ficheros que se especifican en la guía (.properties,, clase.java, plantilla.ftl, plugin.xml) en cuanto a la estructura de ficheros que tengo:

                                                   

                                                  capturaEclipse.PNG

                                                   

                                                  Por otro lado, en la guía, en el codigo de la clase Java hay un sitio dónde se especifica la ruta de la plantilla FTL y esto me crea dudas también respecto a dónde ubicarla y qué ruta poner:. Esto me hace dudar de que sea uno de los problemas que pudiera tener.

                                                   

                                                  // FreeMarker template for rendering preview and published widget.

                                                  private static final String FREEMARKER_FILE = "/plugins/example/resources/hello-world.ftl";

                                                   

                                                  Perdona por las molestias y muchisimas gracias!!!

                                                   

                                                  Saludos