2010-11-13 12 views
13

He intentado utilizar java.util.Calendar en mi aplicación GWT de la siguiente manera:GWT: Ningún código fuente está disponible para el tipo java.util.Calendar

Calendar cal = Calendar.getInstance(); 

entonces me dio este mensaje:

No source code is available for type java.util.Calendar ; did you forget to inherit a required module?

cualquiera ¿Sabes lo que está mal con eso?

+2

Dado que tiene algunas respuestas a continuación que parecen responder a su pregunta, considere marcar una de ellas como 'Aceptada' haciendo clic en el tickmark debajo de su conteo de votos (vea [¿Cómo acepta una respuesta?] (Http://meta.tex.stackexchange.com/q/1852)). Esto muestra qué respuesta te ayudó más y asigna puntos de reputación al autor de la respuesta (¡y a ti!). –

Respuesta

-3

No hubiera pensado que necesitaría el código fuente aunque nunca haya usado SWT. Pero en ningún momento, al utilizar cualquiera de una amplia gama de aplicaciones de Java, he tenido este mensaje simplemente tratando de usar una clase de ellos. Entonces, creo que es un mensaje incorrecto o que ha hecho algo en el IDE que intenta mostrarle el código fuente. Puede encontrar un archivo zip de la fuente en los directorios de JDK. Los identificadores como Eclipse tienen la capacidad de asociar cremalleras de código fuente con jarras para que puedan buscar automáticamente el origen cuando activa esa acción.

+2

GWT usa el código fuente de Java para crear javascript, y no puede funcionar sin él. Los archivos de clase solo no lo cortarán. No es realmente Java ... parece que sí;) –

+0

Esto no responde la pregunta. –

7

La clase Calendar depende de muchas clases de Java que GWT no puede convertir a Javascript. Si se ajusta a sus necesidades, simplemente puede hacer new Date() en el lado del cliente. Vea here para más detalles.

También podría probar el gwt-calendar project.

3

java.util.Date seguirá funcionando, y puede usar com.google.gwt.i18n.client.DateTimeFormat para hacer cualquier formato de fecha que necesite hacer.

Compruebe ese enlace para ver el código de ejemplo completo.

+0

El problema es que 'DateTimeFormat' depende de' com.google.gwt.i18n.client.LocaleInfo' que tiene código nativo. ¿Tiene una forma de ejecutar esto a través de las pruebas JUnit estándar? –

4

La clase de calendario no es compatible con GWT, debe usar la clase Date en lugar de Calender.

10

El error correspondiente se registra en GWT GWT desde la versión 1.3 y se puede encontrar aquí - http://code.google.com/p/google-web-toolkit/issues/detail?id=603

1) El apoyo de la clase Calendario de GWT es una solicitud de larga espera de GWT comunidad de usuarios.

2) Desafortunadamente, el equipo de GWT ha decidido que podemos prescindir de él.

Puede encontrar todas las discusiones posibles en el foro de Google GWT. Hay otras alternativas que busca en el foro y el tema de debate se ejecuta en algunas páginas.

Esencialmente, decidimos eliminar cualquier código del lado del cliente usando Calendar y simplemente manejar las cosas en el lado del servidor.

Cuestiones relacionadas