Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-05-2006
Avatar de mazinger
mazinger mazinger is offline
Miembro
 
Registrado: jul 2004
Ubicación: Zamora
Posts: 85
Poder: 20
mazinger Va por buen camino
Enviar Java desde Delphi

Aunque en un hilo anterior:

http://clubdelphi.com/foros/showthread.php?t=31503

Ya preguntaba algo parecido, después de mucho investigar he llegado a la conclusión de que mi planteamiento tal vez estuviera equivocado.
Lo que realmente quiero es que mi programa Delphi interactúe de forma transparente con una página web que contiene comandos en Java, de manera que Delphi navegue automáticamente hasta la parte que el cliente necesita, sin que éste tenga que ir recorriendo interminables páginas web.
Esto que parece fácil en principio, no lo es tanto, pues el servidor obliga (o al menos eso creo) a ir siguiendo los pasos correspondientes sin saltarse ninguno, como si llevara un registro de sesión de manera que hay que ir recorriendo obligatoriamente todas las páginas hasta llegar a la que busco.
Para poder abrir alguna página concreta hay que pulsar algún botón que ejecuta un comando Java, por ejemplo:

Código:
botones[1] = "javascript:document.formulario.submit()";
Lo que yo quiero es que mi programa envíe ese comando para evitar que el usuario tenga que pulsar ese botón, y así llegar hasta la página que mostrará la información que requiere el cliente.

Espero haber sido algo más claro, y a ver si alguien me echa una mano, que es importante para mi proyecto
Gracias
__________________
Visita mi página (en construcción):

http://mazinger.wordpress.com/
Responder Con Cita
  #2  
Antiguo 11-05-2006
liadsoft liadsoft is offline
Miembro
 
Registrado: may 2006
Posts: 12
Poder: 0
liadsoft Va por buen camino
Idea

Bueno, cada ves que se presiona un botón en una página, creo que se ejecuta o se envía información a la página que se encuentra en el campo 'action' del formulario al que pertenece el botón. La información se envía de la siguiente forma:

'página en action'+?+componente1 = valor1 & componente2 = valor 2 & ...

Donde los componentes son los botones, la TextBox y eso. Esto en el caso que el comando sea GET, de ser POST, se envía todo esto a la página en action pero con el POST, en el cuer´po del mensage HTTP

Lo que puedes hacer es ver a qué página te envía el botón, bajarla y si existe otro botón ver a qué página envía este, y la última es la que le debes pasar el Browser.
Responder Con Cita
  #3  
Antiguo 11-05-2006
liadsoft liadsoft is offline
Miembro
 
Registrado: may 2006
Posts: 12
Poder: 0
liadsoft Va por buen camino
Lightbulb Java desde Delphi

Bueno, me parece que no te había entendido bien.
Lo que quieres es que el Delphi, ya con la página bajada, ejecute el comando java que se ejecuta al presionar el botón.

Si no me equivoco, esto lo puedes hacer sin enredarte con el java, dejando que un buscador, como el Internet Expliorer haga ese trabajo. En ese caso, lo que tines es que copiar el comando o la función java que tu quieres que el IE te ejecute, enviarle la página a él pero le agregas un bloque Script (que siempre se ejecuta cuando el IE llega a analizar la página hasta ahí '<script>' y en él pones el código que ejecuta el botón, creo que en ese caso el IE te va a ejecutar el código y él solito te va a acceder a la página que llama el botón.
Responder Con Cita
  #4  
Antiguo 11-05-2006
Avatar de mazinger
mazinger mazinger is offline
Miembro
 
Registrado: jul 2004
Ubicación: Zamora
Posts: 85
Poder: 20
mazinger Va por buen camino
Buf, pues no te llego a entender lo que me cuentas.
Yo utilizo el TWebBrowser, pero lo oculto para que sólo aparezca cuando he llegado a la página que quiero. No sé como el TWebBrowser puede enviar el comando Java. ¿Algún ejemplo?
Gracias por tu respuesta.
__________________
Visita mi página (en construcción):

http://mazinger.wordpress.com/
Responder Con Cita
  #5  
Antiguo 12-05-2006
liadsoft liadsoft is offline
Miembro
 
Registrado: may 2006
Posts: 12
Poder: 0
liadsoft Va por buen camino
Form.Submit

Bueno, te explicaré algo que seguramente ter va a ayudar.

el comando document.formularion.submit() lo que hace es que se ejecute la acción de un formulario que se halla en la página, es decir:

<form name="formulario" action='http://www.hola.com/hola.php'>

lo que tienes que hacer para llegar a la página que se habre después de presionar el botón es obtener la página que está en el campo action del formulario.

Si tienes duda de cómo obtener la página, pregunta.
Responder Con Cita
  #6  
Antiguo 12-05-2006
Avatar de mazinger
mazinger mazinger is offline
Miembro
 
Registrado: jul 2004
Ubicación: Zamora
Posts: 85
Poder: 20
mazinger Va por buen camino
LiadSoft, en primer lugar gracias por tus explicaciones, es un campo nuevo para mi, y estoy investigando como resolver esto.

El formulario ejecuta esto:

Código:
<form name="formulario" method="POST" action="IndexAction.do">
Pero si llamo directamente por código a la página IndexAction.do, me da error. Me dice que mi sesion no es válida. Si pulso el botón funciona perfectamente.
Tal vez la solución sea emular una pulsación del botón web a través de código desde Delphi, pero no sé como se puede hacer eso.

Te paso el código completo de la página para ver si te ayuda:
Archivos Adjuntos
Tipo de Archivo: zip LoginAction.zip (1,5 KB, 37 visitas)
__________________
Visita mi página (en construcción):

http://mazinger.wordpress.com/
Responder Con Cita
  #7  
Antiguo 12-05-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hola,

Tal como te dice liadsoft, formulario.submit() (que por cierto, es código JavaScript, que nada tiene que ver con Java) lo que hace es mandar los datos del formulario a la url indicada.

Esto nunca va a ser equivalente a cargar dicha url directamente en el navegador pues justamente no estarías mandando los datos contenidos en el formulario.

El WebBrowser te permite enviar un POST como "dios manda". Revisa este hilo en donde se da la forma de hacerlo.

Nota que si quieres hacerlo transparente al usuario, entonces tú tienes que proveer los datos en el código delphi y hacer el POST. Tienes entonces que examinar el código HTML del formulario para ver cuáles son los nombres de los campos para saber qué es lo que tienes que mandar.

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Enviar parametros desde Delphi a Storage Procedures en BD Firebird cuburu Conexión con bases de datos 12 17-01-2006 23:00:48
se puede enviar un email desde delphi? lazarous Varios 1 17-10-2005 14:01:12
enviar mail desde delphi 7 Diego Internet 2 07-06-2004 13:07:50
enviar un amail desde delphi 5 camambrini Internet 1 03-01-2004 15:52:06
como enviar un dataSet desde Delphi a Oracle?? Jaco Oracle 3 25-09-2003 16:19:25


La franja horaria es GMT +2. Ahora son las 07:15:42.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi