Integración de JSP con J2ME

A ver si me puedes echar una manilla.
Estoy empezando mi proyecto fin de carrera en el cual tengo que realizar una aplicación java para un terminal móvil (J2ME) que facilite el aparcamiento en un parking de un centro comercial, de forma que cuando un usuario (cliente) entra al parking se comunica mediante bluetooth con un servidor, el cual le devuelve, según una serie de parámetros, la plaza libre que más se adecue a las exigencias del cliente. Para que el servidor sepa cuales son las exigencias del cliente, previamente el usuario tiene que descargarse al móvil también por bluetooth una aplicación desde una página web. Dicha página la quiero realizar con JSP y en ella el cliente tiene que rellenar un formulario indicando por ejemplo en qué planta quiere aparcar, si es minusválido... Una vez rellenado el formulario, se tiene que descargar esa configuración al móvil para que una vez entre en el parking el servidor sepa que es lo que quiere. Mi duda es la siguiente: ¿Es ésto posible?, es decir, ¿cómo hago para que los datos que se van rellenando en el formulario se conviertan en los parámetros de configuración de una aplicación que me descargo al móvil?
Lo siento si no me he explicado muy bien o si es una pregunta tonta pero es que estoy empezando en este mundillo y estoy un poco verde. Espero que me puedas ayudar porque la verdad es que no se por donde meterle mano.
Respuesta
1
Con la información que me has dado no sé exactamente cual es la necesidad que tienes. No entiendo si es que el usuario necesita descargar programas diferentes según sus necesidades o que el programa se configura según lo que diga un servidor.
Si es lo primero, es bastante fácil escoger según unos valores dados, devolver un fichero u otro.
Si lo que quieres es que una vez descargado el programa, presentar un formulario al usuario y que una vez relleno, se envíe los datos al servidor de jsp para que te diga la plaza libre, más fácil todavía.
Mi preocupación realmente es si desde bluetooth se puede establecer una conexión con un servidor web externo. No tengo mucha experiencia con bluetooth de J2ME por lo que no sé que contestarte en este punto. Asumo que la prueba de conexión entre tu terminal y un servidor por bluetooth la has realizado y funciona.
Si es así, no tengo problemas en ayudarte con lo demás, siempre que me aclares exactamente que deseas hacer.
Hola de nuevo Perla, muchas gracias por contestar tan rápido.
Te comento un poco con más detalle para que te quede más claro.
La aplicación que tengo que realizar tiene que servir para que una persona que la tenga en su móvil pueda usarla cuando entra a un parking para que le facilite el aparcamiento. Cuando entra al parking, el móvil tiene que establecer conexión por bluetooth con un servidor local situado a la entrada del parking. Este servidor está conectado a una base de datos también local. El móvil le hará una petición al servidor indicándole que le muestre la plaza libre que más se ajuste a las necesidades del cliente. El servidor, según estas necesidades buscará en la base de datos que plaza está libre y se la devolverá al móvil. De esta manera el cliente ya sabe donde aparcar. Ahora bien, para hacer la aplicación más completa, se me ha ocurrido que cada cliente configure la aplicación o programa a su gusto. Por ejemplo, puede elegir si quiere una plaza que esté en la segunda planta, si quiere una plaza para minusválidos... Así, cuando el cliente entra al parking, el servidor tendrá que buscar en la base de datos una plaza u otra.
¿Cómo puede configurar el cliente la aplicación a su gusto? Para dar respuesta a esta pregunta tenía dos posibles opciones: la primera era que el usuario fuera a un stand colocado en el centro comercial, rellenara un formulario en el ordenador indicando sus preferencias y se descargase él programa al móvil. La segunda opción era la que te comente antes, que el usuario pudiese rellenar desde su casa el formulario colocado en una página web creada con JSP y descargarse el programa al móvil.
El programa o aplicación es la misma siempre, lo único que cambia es los paramétros que elijan los clientes al rellenar el formulario.
Lo del tema del bluetooth, no te preocupes. Lo que no se es cómo puedo hacer para que los datos que se rellenan en el formulario se conviertan en un programa que me pueda descargar al móvil para después usarlo en el parking.
Espero que te haya quedado un poco más claro. Me harías un gran favor en ayudarme.
Muchas gracias por las molestias,
Dani
A ver que te parece estas opciones.
La aplicación para móvil tiene un menu, con unos checkbox, desplegables, y alguna cosilla así, en el que el usuario, sin conectarse a ningún servidor (todavía) escoge las opciones del parking que quiere buscar. Esto lo puede hacer también en su casa, en el stand, o en el atasco de camino al parking... la información apenas son un par de números guardados en un registro del móvil.
Cuando el móvil se acerca a la entrada del parking, entra en el rango de bluetooth y manda sus preferencias, el servidor mira en base de datos y le dice las plazas libres que coinciden con sus gustos.
Otra opción, desde una aplicación web el usuario guarda sus preferencias a través del formulario (en jsp, php o como quieras) en la base de datos. Esta aplicación devuelve un código al usuario que este puede guardar en la aplicación del móvil y que será el que se envíe al servidor del parking (por bluetooth) cuando se acerque y le resuelve las preferencias. Este código bien puedes escoger entre dos opciones:
* que sea un codigo de usuario, por lo que el servidor deberá de consultar en base de datos las preferencias que este guardó y actuar en consecuencia. Ventajas : el usuario puede modificar via web sus preferencias, simplificas el codigo del dispositivo movil. Desventajas : guardas informacion del usuario, por tonta que sea, requiere un minimo de privacidad y seguridad.
* que sea una forma de codificación de las preferencias, básicamente es lo mismo que el caso primero pero que se puede hacer vía web. De hecho se me ocurre que esta opción puede ser un complemento de la primera. Ventajas : no necesitas guardar información de usuario, Desventajas: el usuario tiene que "teclear" el código en el móvil, es un poco incómodo y según quien puede resultar tedioso.
Puedes hacer combinaciones, en cualquier caso hacer una aplicación web para una cosa así (si esa era la pregunta) no es difícil, igual que hacer un pequeño formulario en j2me y guardar algo en un registro tampoco (si esa era la pregunta).
Cuando tengas algo más concreto vuelve por aquí a preguntar.
Muchas gracias de nuevo Perla por una respuesta tan rápida y detallada. Me parece que me has aclarado bastante las cosas.
Le he estado dando vueltas y he pensado que una posible solución completa podría ser la siguiente:
Crear una aplicación en J2ME con un menu hecho con formularios, checkbox... en el que vayan apareciendo las posibles opciones que el usuario puede personalizar. En principio esta aplicación estaría "en blanco", es decir, sin ninguna opción elegida todavía.
Para personalizar la aplicación el cliente tendría 2 formas de hacerlo:
1)Entrar en la aplicación J2ME e ir rellenando lo que le van pidiendo. Cuando termine de rellenar los datos, la configuración escogida se quedaría guardada en el móvil de alguna manera lista para ser utilizada cuando en otro momento entremos al parking.
2)Acceder a una página web y rellenar el mismo formulario pero hecho en JSP. Los datos rellenados se quedarían almacenados en la base de datos en el campo del cliente.
Cuando el usuario entre al parking y corra la aplicación, lo primero que le saldría sería un pequeño menú con 3 opciones:
a)Obtener plaza con los datos rellenados en el móvil
b)Obtener plaza con los datos rellenados en el formulario (y guardados en la base de datos)
c)Personalizar aplicación (se supone que para acceder a a) anteriormente se hizo esto).
Cuando el cliente elija la opción, el servidor ya sabría qué plaza asignarle.
¿Qué te parece? ¿Sería posible hacerlo así? Lo que más dudo es cómo hacer para que una vez personalizada la aplicación se guarde y se quede lista para ser utilizada.
Nota: Lo que me comentaste de la seguridad en principio no lo necesitaría porque los datos que se mandan no hace falta que sean confidenciales.
Bueno Perla, agradecerte de nuevo tu ayuda. Con expertos así da gusto.
Dani
Del tema de la seguridad en principio no me tengo que preocupar porque la información que se manda no hace falta que sea tan confidencial.
La verdad es que me parece una opción bastante buena, ya es cosa de ver cuanto se te complica la aplicación.
Para guardar un dato en un dispositivo móvil existe un elemento en J2ME, el [color=#000000]RecordStore no recuerdo exactamente el paquete, pero es una forma de guardar un array de bytes... o algo así.[/color]
Bueno, suerte y un saludo.
PD: Finaliza la pregunta :)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas