2012-02-23 26 views
6

La semana pasada, me deprimí mucho, tengo tres grandes aplicaciones en producción y muchas más que usan Swing Application Framework. Más tarde, cuando comencé a migrar a Netbeans 7.1, BOOM !, ya no hay soporte para SAF.Netbeans 7.1 ¿se ha eliminado el soporte de Swing Application Framework? ¿Cómo puedo migrar del formulario 7.0 a 7.1?

Entonces, ¿qué puedo hacer, alguna idea de cómo migrar a Netbeans 7.1?

Agradeceré su ayuda.

PD: El equipo de Netbeans, por favor no agregue marcos sin una advertencia de que son solo una Solicitud de especificación de Java - JSR. Cuando comencé a usar SAF, parece que nunca se interrumpirá.

PS2: para hacernos oír que estamos utilizando SAF, voto en https://netbeans.org/bugzilla/show_bug.cgi?id=204661

+1

el trabajo se continúa en BSAf (mejor-swing-application-framework), es un proyecto en kenai (no sé si la facilidad para volver a integrarlo en Netbeans) – kleopatra

+0

parece como si estuvieran haciendo esto para animar/empujar a los usuarios a cambiar a la rica plataforma JavaFX 2.0. Hasta el momento, el soporte de JavaFX 2.0 aún no se ha acelerado y aún está en sus primeras etapas. – sttaq

Respuesta

2

no tengo una buena respuesta, pero esto puede dar a la gente más ideas (y que sería más útil incluir la información aquí que publicar una pregunta por separado) ...

También tengo una aplicación SAF para la que ahora necesito Java 1.7, así que cambié a netbeans 7.1 y no puedo editar los formularios en nb7.0. Cambio entre nb7.0 para editar pantallas, luego uso nb7.1 para compilar y ejecutar.

Si creo un formulario en nb7.1, funciona bien con mi aplicación, y he visto el código generado y los archivos .properties nb7.0 y nb7.1 crean para, digamos, un JPanel, se ven idénticos.

No he encontrado la manera de "convertir" los JPanels generados por nb7.0 a los que funcionan con nb7.1, pero puedo crear un JPanel vacío en 7.1, luego ejecutar 7.0 y copiar todos los controles de la forma 7.0 a la forma 7.1. Los iconos se pierden: un error de NetBeans, y el código se pierde, en general, es un proceso costoso y propenso a errores.

Puede haber alguna bandera en algún lugar del proyecto que indique si un JPanel es "SAF" o no. Si es así, encontrarlo facilitaría la migración.

+0

Algunos plugins se han añadido que puede ayudar, ver https://netbeans.org/bugzilla/show_bug.cgi?id=204661#c59 – Mary

4

He encontrado SAF como un plugin para NetBeans nuevos: http://plugins.netbeans.org/plugin/43853/swing-application-framework-support

+1

Esta es una compilación de las antiguas fuentes de SAF, no desde BSAF, por lo que han pospuesto la problema pero no resuelto; También tenga en cuenta que el complemento está en estado NOGO, porque no aparece en el administrador de complementos. – Szabi

+0

No funciona, no lo recomiendo para la versión 7.2. – Omar

1

he tenido éxito en la apertura de forma SAF en Netbeans 7.2. después de usar algunos de los consejos del foro: http://forums.netbeans.org/topic43775-0-asc-30.html:

  1. eliminar los comentarios // <editor-fold defaultstate="collapsed" desc="Generated Code"> initComponents cerca de() en el código de su forma
  2. deshacerse de todas las anotaciones @Action - en lugar de utilizar componentObject .addActionListener() o similar
  3. Deshágase de todas las org.jdesktop.application y ... getActionMap()
  4. Del archivo .form borre todas las etiquetas que comienzan con <Property name="action" type="javax.swing.Action".

No garantizo que en su caso hará que su formulario funcione al 100%, pero para mí funcionó: mi formulario se puede abrir en Netbeans 7.2.

Si Netbeans le muestra algunos errores o advertencias, lea esos mensajes e intente descubrir qué es lo que está mal, tal vez, por ejemplo, haya eliminado demasiado.

1

Las instrucciones del tipo que logró transportar un formulario SAF a Netbeans 7.2 me ayudaron a comenzar. Hay mucho más en portar a Netbeans 7.3.Recomiendo comenzar con un formulario simple sin nada creado en Netbeans 6.9, luego haga el mismo formulario en 7.3 y compare el código .java y .form que se genera. Eso le mostrará todas las diferencias que tienen que ver con portar el formulario. Una vez que obtenga un formulario simple intente hacer lo mismo agregando un ejemplo de los tipos de componentes que utiliza como paneles con pestañas, botones, casillas de verificación, etc. Una vez más haga una comparación de archivos para que pueda ver cómo cada tipo de componente es diferente. Cada tipo de componente en formularios SAF contiene algún tipo de abstracción de recursos de propiedad de texto vinculada a una línea en el archivo de propiedades para la clase y usted tiene que romper ese enlace y simplemente poner un valor real en el formulario 7.3 de Netbeans. Si omite un solo parámetro relacionado con el recurso en el formulario, recibirá el mismo mensaje de error hasta que haya arreglado todo. Me las arreglé para pasar por ese ejercicio para un marco extremadamente complejo y me tomó un par de días enteros de curva de aprendizaje en parte. Solo 15 marcos más para hacer de manera bastante compleja pero no tanto como la vista principal que hice primero.

Cuestiones relacionadas