cómo establecer el tiempo de solicitud de cliente de servicio web(java)

Estoy trabajando en un escritorio basado en la aplicación que es como la caja de gota, tengo una función downloadFile(long fileId) que el archivo de descarga para mí desde la web, el escritorio del lado de la aplicación en java, donde el servicio web está escrito en .Net

Me han generado cliente WS utilizando netbeans

La cuestión es: Algunas veces sucede que downloadFile(long fileId) función quedas atascado,

Lo que sea la razón detrás de ella, quiero que si la función de servicio web no da ninguna respuesta hasta un momento dado me arrebatar el control de esa función y de generar una nueva llamada después de algún tiempo. Es posible que el uso de java?

EDITAR creo que se podía hacer, si se puede establecer el momento de la solicitud del servicio web pero no tengo idea de cómo ajustar la hora en el cliente generado por netbeans

InformationsquelleAutor NoNaMe | 2012-12-14

2 Kommentare

  1. 5

    En la clase FileUpload que es la raíz de la clase de servicio web(Generado por netBeans) hubo algunos constructores de la clase y la función de la super clase, uno de ellos me estaba usando para crear SOAP objeto. Ese fue el aspecto

    @WebEndpoint(name = "FileUploadSoap")
    public FileUploadSoap getFileUploadSoap() {
       return super.getPort(new QName("http://svc.qleapahead.com/", 
        "FileUploadSoap"), FileUploadSoap.class);
        }

    en esta función que he hecho algunas modificaciones con el fin de establecer el tiempo de parámetro out y esto se hizo como

    @WebEndpoint(name = "FileUploadSoap")
    public FileUploadSoap getFileUploadSoap() {
        FileUploadSoap fileUploadSoap = super.getPort(new QName(
                "http://svc.qleapahead.com/", "FileUploadSoap"),
                FileUploadSoap.class);
        ((BindingProvider) fileUploadSoap).getRequestContext().put(
                "com.sun.xml.internal.ws.request.timeout", 1000 * 2 * 60);
        return fileUploadSoap;
    }

    y problema resuelto…

    en resumen, esta declaración me ayudó mucho

    ((BindingProvider) fileUploadSoap).getRequestContext().put(
                    "com.sun.xml.internal.ws.request.timeout", 1000 * 2 * 60);
  2. 1

    Dependiendo de que el marco para llamar al webservice, habrá alguna forma de establecer un readTimeout causando la llamada a fallar con algún tipo de excepción.

    Saludos,

    • mi WS es el JABÓN base y se utiliza netbeans para generar cliente para consumir el servicio web, puede usted explicar cómo establecer readTimeOut ???
    • readTimeOut es una propiedad de la conexión HTTP. Yo no estoy familiarizado con Netbeans, pero quizás este hilo es útil: stackoverflow.com/questions/9536616/…

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea