cancel
Showing results for 
Search instead for 
Did you mean: 

Nuevo Wizard

aishea
Champ in-the-making
Champ in-the-making
Hola a todos!!

Soy bastante nueva en esto de la utilización de alfresco y ando un poco perdida en como hacer las cosas.
Lo que quiero hacer una nueva opción dentro del desplegable 'Crear', es decir, si no estoy equivocada, quiero crear un wizard. Lo que deseo es que al pulsar la opción de crear, aparezca un formulario (lo he creado ya en html) y que esa plantilla, una vez rellenada, se guarde (para luego poder hacer comparaciones, comprobar si se ha cumplido o no…. )

He estado siguiendo este post: http://wiki.alfresco.com/wiki/Wizard_Framework pero la verdad es que no me ayuda demasiado… alguién me puede explicar mas detalladamente cómo debo hacerlo, que ficheros crear o modificar… y cualquier otra cosa que me sea de ayuda?

Muchas gracias de antemano.
14 REPLIES 14

aishea
Champ in-the-making
Champ in-the-making
pues no lo tenía dentro, pero lo he metido dentro de un bloque config, he probado y tampoco me aparece la opcion… no me da ningun error al compilar, pero no logro hacer que funcione…

dacedos
Champ in-the-making
Champ in-the-making
Bueno te paso como lo hice yo, yo lo que pretendia era crear un espacio directamente desde un template:

esto en el web-client-config-custom.xml


   <!– Define actions to create and edit content –>
   <config>
      <actions>
         <!– Custom Create content Wizard–>
         <action id="custom_espacio_NTAvariacion">
            <permissions>
               <permission allow="true">CreateChildren</permission>
            </permissions>
            <label-id>custom_create_space_NTA_variacion</label-id>
            <image>/images/icons/new_content.gif</image>
            <action>wizard:CreateNTAVariacionWizard</action>
         </action>
      </actions>
   </config>

   <!– Custom create content wizard  –>
   <config>
      <wizards>
         <wizard name="CreateNTAVariacionWizard"
            managed-bean="CustomNTAVariacionWizard"
            title-id="custom_create_content_wizard_title"
            description-id="create_content_desc"
            icon="/images/icons/new_content_large.gif">
            <step name="details" title-id="space_details" description-id="create_space_step3_desc">
               <page path="/jsp/spaces/create-space-wizard/details.jsp"
                     title-id="create_space_step3_title"
                     description-id="create_space_step3_desc"
                     instruction-id="default_instruction" />
            </step>
            <step name="summary" title-id="summary" description-id="summary_step_description">
               <page path="/jsp/wizard/summary.jsp"
                     title-id="summary"
                     description-id="summary_desc"
                     instruction-id="create_space_finish_instruction" />
            </step>
         </wizard>
      </wizards>
   </config>  

    <config>
         <!– Actions Menu for Create in Browse screen –>
         <action-group id="browse_create_menu">
            <action idref="custom_espacio_NTAvariacion" />
            <action idref="create_content" />
            <action idref="create_form" />
            <action idref="create_web_form" />
            <action idref="create_website_wizard" />
            <action idref="create_space" />
            <action idref="create_space_wizard" />
         </action-group>
   </config>


y en el faces-config-custom.xml


      <!– *************************************************************** –>
   <!– NTA Variacion  –>
   <!– *************************************************************** –>

      <managed-bean>
      <description>
         Wizard que controla la creacion del espacio NTA Variacion
      </description>
      <managed-bean-name>CustomNTAVariacionWizard</managed-bean-name>
      <managed-bean-class>org.alfresco.web.bean.spaces.CustomSpaceTemplateWizard</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
      <managed-property>
         <property-name>nodeService</property-name>
         <value>#{NodeService}</value>
      </managed-property>
      <managed-property>
         <property-name>fileFolderService</property-name>
         <value>#{FileFolderService}</value>
      </managed-property>
      <managed-property>
         <property-name>searchService</property-name>
         <value>#{SearchService}</value>
      </managed-property>
      <managed-property>
         <property-name>navigator</property-name>
         <value>#{NavigationBean}</value>
      </managed-property>
      <managed-property>
         <property-name>browseBean</property-name>
         <value>#{BrowseBean}</value>
      </managed-property>
      <managed-property>
         <property-name>dictionaryService</property-name>
         <value>#{DictionaryService}</value>
      </managed-property>
      <managed-property>
         <property-name>namespaceService</property-name>
         <value>#{NamespaceService}</value>
      </managed-property>
      <managed-property>
         <property-name>template</property-name>
         <value>NTA-Variacion</value>
      </managed-property>
   </managed-bean>

dacedos
Champ in-the-making
Champ in-the-making
Bueno, sobre mi codigo… yo cree un template con un arbol de directorios e inclui un boton en el menu crear que lo creaba automaticamente y no teniendo que dar create–> advance spaces wizard –> using a template –> … Todos esos pasos se los saltaba e iba directamente a la ventana de pedir el nombre del espacio y la descripcion y esas cosas

Creo que no es precisamente lo que tu necesitas hacer, no ¿?

¿Que es lo que necesitas hacer tu exactamente?

¿Puedes explicarlo un poco mejor?

aishea
Champ in-the-making
Champ in-the-making
Hola de nuevo:

Gracias a dacedos descubrí que lo tengo que hacer es un dialog en vez de un wizard.
Ahora, tras haber creado los ficheros necesarios he conseguido que aparezca la opción en el menú y que aparezca la plantilla que yo quiero que sea base. Pero me topo con mas obstaculos en mi camino, de momento, son dos:
  - Cómo almaceno los datos de la plantilla mediante la clase java?
- Cómo hago para que se guarden como un documento?

Una parte del jsp que he creado para plantilla es así:

     
<table width="532" height="67" border="1" bordercolor="#999999" bgcolor="#CCCCCC">
        <tr>
          <td width="170" height="23"><strong>Fecha</strong></td>
          <td width="170"><strong>Código de Previsión</strong></td>
          <td width="170"><strong>Delegación</strong></td>
        </tr>
        <tr>
          <td height="34"><label>
            <input type="text" name="fecha" id="fecha" />
          </label></td>
          <td><label>
            <input type="text" name="codigo" id="codigo" />
          </label></td>
          <td><label>
            <input type="text" name="delegacion" id="delegacion" />
          </label></td>
        </tr>
      </table>

Lo que querría es guardar los datos que se introducen en los inputs de modo que en alfresco se vieran como un documento.

Muchas gracias de antemano.

dacedos
Champ in-the-making
Champ in-the-making
Hola!

Pues para recoger en la clase java los datos del jsp…

Un ejemplo del jsp
<h:inputSecret id="password" value="#{DialogManager.bean.password}" maxlength="20" size="55" />

y la clase java asociada (org.alfresco.extension.MyDialog.java) tendria que tener un metodo setPassword.

Ademas cuando declaras el bean es cuando le dices la clase java, podria ser algo asi:

    <managed-bean>
      <description>
          Mi descripcion del bean
      </description>
      <managed-bean-name>myDialogBean</managed-bean-name>
      <managed-bean-class>org.alfresco.extension.MyDialog</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
   </managed-bean>

Sobre guardar un fichero, tendras que leer algo de los webservices, porque ya depende de como quieras guardar ese fichero (Si lo quieres guardar en Alfresco) si lo que quieres es guardarlo en otro formato… ya es cosa de java, lo puedes guardar como quieras

Suerte!