Propriedades customizadas de transporte HTTP para aplicativos de serviços da Web
Use propriedades de transporte HTTP para serviços da Web Java™ API for XML-Based Web Services (JAX-WS) e Java API for XML-based RPC (JAX-RPC) para gerenciar o conjunto de conexões para conexões de saída HTTP, configurar a codificação de conteúdo da mensagem HTTP, ativar a conexão persistente de HTTP e reenviar a solicitação de HTTP quando ocorre um tempo limite.
Estabelecer uma conexão é uma operação dispendiosa. O conjunto de conexões aprimora o desempenho, evitando a sobrecarga de criar e desfazer conexões. Quando um aplicativo chama um serviço da Web por um transporte HTTP, o conector de saída HTTP para o serviço da Web localiza e usa uma conexão existente de um conjunto de conexões. Quando a resposta é recebida, o conector retorna a conexão ao conjunto de conexões para reutilização. A sobrecarga de criar e desfazer a conexão é evitada.
- com.ibm.websphere.webservices.http.connectionIdleTimeout
- com.ibm.websphere.webservices.http.connectionKeepAlive
- com.ibm.websphere.webservices.http.connectionPoolCleanUpTime
- com.ibm.websphere.webservices.http.connectionTimeout
- com.ibm.websphere.webservices.http.maxConnection
- com.ibm.websphere.webservices.http.responseContentEncoding
- com.ibm.websphere.webservices.http.requestContentEncoding
- com.ibm.websphere.webservices.http.requestResendEnabled
- com.ibm.websphere.webservices.http.SocketTimeout
- com.ibm.ws.webservices.enableHTTPPrefix
- enableMultiThreadedSession
- HttpInboundPersistReadTimeout
- http.nonProxyHosts
- http.proxyHost
- http.proxyPort
- https.proxyHost
- https.proxyPort
- tempo limite
- write_timeout
com.ibm.websphere.webservices.http.connectionIdleTimeout
Esta propriedade especifica o intervalo, em segundos, após o qual uma conexão não é reutilizada.
Quando um aplicativo solicitar uma nova conexão, o conector de saída HTTP procurará através das conexões não usadas existentes. Se ele localizar uma conexão que está inativa por mais tempo que esta propriedade especificar, a conexão poderá ser liberada. Se ele localizar uma conexão que está inativa por menos tempo que esta propriedade especificar, a conexão será reutilizada e a procura será interrompida. Como a pesquisa procura apenas um terminal e para antes que ele revise todas as conexões, as conexões inativas podem permanecer.
A tarefa de limpeza verifica regularmente todas as conexões não usadas por seu tempo inativo. Se a tarefa de limpeza localizar uma conexão que está inativa por mais tempo que sua propriedade especificar,ela será liberada. Portanto, as conexões inativas podem persistir para a duração do atraso do cronômetro da tarefa de limpeza mais o valor dessa propriedade. Por exemplo, se o atraso do cronômetro da tarefa de limpeza for 180 segundos e com.ibm.websphere.webservices.http.connectionIdleTimeout estiver configurado como o valor padrão de cincosegundos, as conexões poderão ficar inativas por até 185 segundos antes que elas sejam liberadas. A propriedade JVM que controla o atraso do cronômetro da tarefa de limpeza é com.ibm.websphere.webservices.http.connectionPoolCleanUpTime.
Essa propriedade afeta todas as conexões HTTP de serviços da web feitas em uma JVM.
Informações | Valor |
---|---|
Tipo de dados | Número Inteiro |
Unidades | Segundos |
Default | 5 |
Intervalo | 0 (zero) para o máximo inteiro |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
com.ibm.websphere.webservices.http.connectionKeepAlive
Essa propriedade especifica se o conector deve manter uma conexão HTTP ativa ou persistente. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Se a propriedade for definida como true, o conector manterá a conexão no pool de conexão e reutilizará a conexão para pedidos HTTP subseqüentes. No entanto, a conexão é fechada se syncTimeout(Read timeout) for alcançado ou se o servidor abandonar a conexão. Além disso, uma conexão inativa é fechada pelo encadeamento de manutenção do grupo se o tempo inativo ultrapassar o valor de tempo limite de conexão inativa. Se a propriedade for definida como false, a conexão será fechada após o pedido HTTP ser enviado. Se um novo pedido estiver pronto para ser enviado e a conexão não existir, o conector HTTP criará uma.
Uma resposta HTTP 200 para uma solicitação indica que a solicitação foi recebida e que a conexão usada para essa solicitação está ativa e uso para reutilização para a próxima chamada. Uma resposta HTTP 202 para uma solicitação indica que a solicitação foi recebida, mas a conexão usada para essa solicitação não está disponível para reutilização.

Informações | Valor |
---|---|
Tipo de dado | Seqüência de Caracteres |
Default | True |
Valores Válidos | True, false |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
com.ibm.websphere.webservices.http.connectionPoolCleanUpTime
Essa propriedade especifica o intervalo, em segundos, entre execuções do encadeamento de manutenção do conjunto de conexões.
Esta propriedade afeta todas as conexões de HTTP dos serviços da Web feitas em uma JVM. Por exemplo, se a propriedade for definida para 180, o encadeamento de manutenção do grupo será executado a cada 180 segundos. Quando o encadeamento de manutenção do grupo for executado, o conector descartará todas as conexões da fila de limpeza.
Informações | Valor |
---|---|
Tipo de dado | Número inteiro |
Unidades | Segundos |
Default | 180 |
Range | 0 (zero) para o máximo inteiro |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
com.ibm.websphere.webservices.http.connectionTimeout
Essa propriedade especifica o intervalo, em segundos, no qual um pedido de conexão alcança o tempo limite e o erro WebServicesFault( "Tempo de conexão esgotado" ) ocorre.
O valor afeta todos os pedidos de conexão HTTP feitos pelo conector de saída HTTP. O tempo de espera é necessário quando o número máximo de conexões no pool de conexão é alcançado. Por exemplo, se a propriedade estiver definida para 300 e o número máximo de conexões for alcançado, o conector aguardará 300 segundos até que uma conexão esteja disponível. Após 300 segundos, o erro WebServicesFault( "Tempo de conexão esgotado") ocorre se uma conexão não estiver disponível. Se a propriedade for definida para 0 (zero), o conector aguardará até que uma conexão esteja disponível.
Se o erro WebServicesFault( "Tempo de conexão esgotado" ) ocorrer no aplicativo, defina um valor mais alto para a propriedade com.ibm.websphere.webservices.http.connectionTimeout. Além disso, reveja o uso do aplicativo. Se o valor da propriedade com.ibm.websphere.webservices.http.maxConnection for definido para 0 (zero) e for ativado para um número ilimitado de conexões, o valor da propriedade com.ibm.websphere.webservices.http.connectionTimeout será ignorado.
Informações | Valor |
---|---|
Tipo de dado | Número inteiro |
Unidades | Segundos |
Default | 300 |
Range | 0 (zero) para o máximo inteiro |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
com.ibm.websphere.webservices.http.maxConnection
Essa propriedade especifica o número máximo de conexões que são criadas no pool de conexão do conector de saída HTTP.
Esta propriedade afeta todas as conexões de HTTP dos serviços da Web feitas em uma JVM. Quando o número máximo de conexões for alcançado, nenhuma nova conexão será criada e o conector HTTP aguardará uma conexão atual para retornar para o pool de conexão. Se o conector HTTP não aguardar uma conexão atual devido a um tempo limite de pedido de conexão, o erro WebServicesFault( "Tempo de conexão esgotado" ) ocorrerá. Por exemplo, se a propriedade for definida como 5, e houver 5 conexões em uso, o conector HTTP aguardará o tempo determinado especificado na propriedade com.ibm.websphere.webservices.http.connectionTimeout para que uma conexão seja disponibilizada.

Informações | Valor |
---|---|
Tipo de dado | Número inteiro |
Default | 25 para aplicativos JAX-RPC 50 para aplicativos JAX-WS |
Range | 5 é o número inteiro máximo, que é menor ou igual à metade do tamanho do conjunto de encadeamentos do contêiner da Web |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
com.ibm.websphere.webservices.http.responseContentEncoding
Essa propriedade especifica o tipo de codificação para ser utilizado na mensagem de cada resposta HTTP. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.

Os formatos de codificação suportados seguem a especificação de protocolo HTTP 1.1 incluindo gzip, x-gzip, e deflate. Se esta propriedade for configurada, os cabeçalhos "Content-Encoding" na resposta HTTP serão configurados com o mesmo valor. Se a propriedade não for definida, o conteúdo da mensagem de resposta HTTP não será codificado. O valor padrão é sem codificação.
Se a propriedade for definida, o cliente do pedido também deverá suportar a mesma codificação. Caso contrário, uma falha poderá ocorrer e um erro WebServicesFault() poderá ser exibido.
O formato de codificação compactado não é suportado e a codificação x-gzip é equivalente à codificação gzip.
Informações | Valor |
---|---|
Tipo de D]ados | Sequência de Caracteres |
Valores válidos | gzip, x-gzip ou deflate |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
com.ibm.websphere.webservices.http.requestContentEncoding
Essa propriedade especifica o tipo de codificação a ser utilizado na mensagem de cada pedido de saída HTTP. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Os formatos de codificação suportados seguem a especificação de protocolo HTTP 1.1 incluindo gzip, x-gzip, e deflate. Se esta propriedade for configurada, os cabeçalhos "Content-Encoding" e "Accept-Encoding" na solicitação de HTTP também serão configurados com o mesmo valor. Por exemplo, se a propriedade for definida para gzip, os cabeçalhos se tornarão Content-Encoding: gzip e Accept-Encoding: gzip. No entanto, se a propriedade não for definida, a mensagem do pedido HTTP não será codificada. O padrão é nenhuma codificação.
Você deve verificar se o servidor da Web de destino é capaz de decodificar o formato de codificação configurado. Por exemplo, se a propriedade for configurada para gzip, o servidor da Web de destino também deverá suportar a codificação gzip. Caso contrário, uma falha poderá ocorrer e um código de status 415 Tipo de Mídia Não Suportado poderá ser exibido.
O formato de codificação compactado não é suportado e a codificação x-gzip é equivalente à codificação gzip.
Informações | Valor |
---|---|
Tipo de D]ados | Seqüência de Caracteres |
Valores válidos | gzip, x-gzip e deflate |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
com.ibm.websphere.webservices.http.requestResendEnabled
Essa propriedade informa ao conector HTTP para reenviar a mensagem SOAP através de pedido HTTP após um erro java.net.ConnectException: tempo limite da leitura ser registrado. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Essa propriedade informa ao conector HTTP para reenviar a mensagem SOAP através de pedido HTTP após um erro java.net.ConnectException: tempo limite da leitura ser registrado. A java.net.ConnectException é causada pelo tempo limite de um soquete ou quando um servidor é encerrado enquanto o pedido está sendo enviado. Se a propriedade estiver ativada, o conector tentará reconectar apenas uma vez e reenviará a mesma mensagem SOAP através de HTTP. Caso contrário, o conector parará de enviar a mensagem SOAP e um erro WebServicesFault será registrado.
Problemas podem ocorrer com o aplicativo caso essa propriedade seja ativada. O pedido HTTP que é reenviado pode ser recebido duas vezes pelo servidor e poderá causar um resultado inesperado.
Informações | Valor |
---|---|
Tipo de dado | String |
Default | False |
Valores válidos | True, false |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
com.ibm.websphere.webservices.http.SocketTimeout
Essa propriedade especifica a quantidade de tempo, em segundos, a ser aguardada para que o soquete de saída seja estabelecido com o servidor remoto.
Esta propriedade afeta todas as conexões de HTTP dos serviços da web feitas em uma JVM. Se um valor inválido for fornecido, o valor padrão substituirá o valor inválido.
Informações | Valor |
---|---|
Tipo de D]ados | Número Inteiro |
Unidades | Segundos |
Default | 180 Atenção: Se um valor inválido for especificado, o valor padrão substituirá o valor inválido.
|
Range | 0 (zero) a 2147482 (o número inteiro máximo) |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
com.ibm.ws.webservices.enableHTTPPrefix
Essa propriedade especifica se o valor hostname:port definido como um prefixo da URL HTTP customizado no painel Fornecer URL de terminal HTTP no console administrativo é preenchido no campo de URL na cópia do arquivo WSDL retornado do serviço para o cliente. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Configure essa propriedade com o valor true para que o prefixo de URL HTTP customizado especificado seja corretamente especificado no arquivo WSDL retornado para o cliente. Se essa propriedade não for configurada com o valor true, o hostname:port customizado especificado do nó do servidor que responde à solicitação não será preenchido no campo de URL na cópia do arquivo WSDL retornado ao cliente.
Informações | Valor |
---|---|
Tipo de D]ados | Seqüência de Caracteres |
Default | Falso |
Valores válidos | True, false |

É necessário reiniciar o servidor de aplicativos depois que esta propriedade customizada tiver sido definida de modo que esta propriedade seja utilizada pelo sistema.
enableMultiThreadedSession
Essa propriedade especifica se é permitido a um cliente compartilhar informações de sessão HTTP entre os encadeamentos para a mesma instância do cliente. Para ativar este comportamento, configure essa propriedade com o valor true chamando o método _setProperty no stub do cliente. Se essa propriedade não for ativada, o comportamento padrão será tornar as sessões locais para o encadeamento no qual o cliente foi chamado.
Esta propriedade é aplicável apenas para serviços da web JAX-RPC.
Properties prop = new Properties();
InitialContext ctx = new InitialContext(prop);
Service service = (Service)ctx.lookup("java:comp/env/service/StockQuoteService");
QName portQname = new QName("http://httpchannel.test.wsfvt.ws.ibm.com", "StockQuoteHttp");
StockQuote sq = (StockQuote)service.getPort(portQname, StockQuote.class);
((javax.xml.rpc.Stub) sq)._setProperty(com.ibm.wsspi.webservices.Constants.ENABLE_MULTITHREADED_SESSION, Boolean.TRUE);
Informações | Valor |
---|---|
Tipo de D]ados | Booleano |
Default | Falso |
Valores válidos | True, false |
É necessário reiniciar o servidor de aplicativos depois que esta propriedade customizada tiver sido definida de modo que esta propriedade seja utilizada pelo sistema.
HttpInboundPersistReadTimeout
Essa propriedade especifica o tempo, em segundos, antes que seja atingido o tempo limite da leitura persistente para os aplicativos JAX-WS assíncronos.

java.io.IOException: operação de E/S Assíncrona falhou (1), razão: RC: 32 Canal interrompido
Essa exceção ocorre pois o tempo limite da leitura persistente foi excedido no cliente e, em seguida, a conexão é fechada. Utilize essa propriedade quando estiver lendo dados grandes ou nas vezes em que a rede estiver lenta e levar mais tempo do que o valor padrão de sete segundos no lado do servidor para ler os dados. Se você receber a exceção de canal interrompido no lado do servidor, aumente o valor dessa propriedade de tempo limite.
Informações | Valor |
---|---|
Tipo de D]ados | Número Inteiro |
Unidades | Segundos |
Default | 7 |
Valores válidos | 0 (zero) para o máximo inteiro |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
http.nonProxyHosts
Essa propriedade do sistema JVM atua como uma substituição para as propriedades http.proxyHost e https.proxyHost e especifica os nomes de máquinas do host para as quais não são enviados pedidos por meio do servidor proxy. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Nenhum pedido chamado pelo aplicativo cliente que for enviado a um host cujo nome esteja contido nessa propriedade passará pelo servidor proxy. Separe cada nome do host na lista com uma barra vertical ("|"). É possível, opcionalmente, usar um asterisco (*) como um caractere curinga.
A propriedade http.nonProxyHosts se aplica às conexões HTTP e HTTPS.
- Para o host proxy, insira um nome de http.proxyHost e um valor de myproxy.mycompany.com.
- Para o host de não proxy, insira um nome http.nonProxyHosts e um valor de host1.company1.com|host*.company2.com|*.company3.com.
- um único host chamado host1.company1.com
- qualquer host do domínio company2.com cujo nome comece com host
- qualquer host do domínio company3.com
http.nonProxyHosts="host1.company1.com|host*.company2.com|*.company3.com|host1"

Informações | Valor |
---|---|
Tipo de D]ados | Seqüência de Caracteres |

Para obter informações sobre como configurar essa propriedade, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo.
http.proxyHost
Essa propriedade especifica o nome do host de um proxy HTTP. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Informações | Valor |
---|---|
Tipo de D]ados | Sequência de Caracteres |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
http.proxyPort
Essa propriedade especifica a porta de um proxy HTTP. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Informações | Valor |
---|---|
Tipo de dado | Seqüência de Caracteres |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
https.proxyHost
Essa propriedade especifica o nome do host de um proxy HTTPS. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Informações | Valor |
---|---|
Tipo de D]ados | Seqüência de Caracteres |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
https.proxyPort
Essa propriedade especifica a porta de um proxy HTTPS. É uma propriedade de transporte HTTP que é possível configurar para aplicativos de serviços da Web.
Informações | Valor |
---|---|
Tipo de D]ados | Seqüência de Caracteres |
Para obter informações sobre como configurar essa propriedade, consulte as informações sobre como configurar propriedades de transporte HTTP adicionais usando o wsadmin e usando uma ferramenta de montagem.
tempo limite
Essa propriedade especifica a quantidade de tempo, em segundos, antes de atingir o tempo limite da leitura.
Ao ler uma mensagem grande do serviço da Web, será possível receber mensagens WSWS3228E junto com erros SocketTimeoutExceptions quando forem feitas chamadas de serviços da web.
O valor afeta todos os pedidos de conexão HTTP feitos pelo conector de entrada HTTP. Use essa propriedade de tempo limite de leitura quando estiver lendo quantidades de dados maiores ou quando a rede estiver lenta e a leitura dos dados demorar mais do que o tempo padrão de 300 segundos. Se erros SocketTimeoutExceptions ocorrerem quando a mensagem for lida, aumente o valor da propriedade de tempo limite.
Informações | Valor |
---|---|
Tipo de D]ados | Número Inteiro |
Unidades | Segundos |
Default | 300 |
Range | 0 (zero) para o máximo inteiro |

Para aplicativos JAX-WS, também é possível configurar essa propriedade customizando a política de transporte HTTP ou utilizando ligações JAX-WS. Para obter informações sobre como configurar essa propriedade usando esses métodos, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo ou sobre a configuração das propriedades de política e de ligação de transporte HTTP.
write_timeout
Esta propriedade especifica o período de tempo, em segundos, para que a ação de tempo limite de gravação ocorra quando uma mensagem for enviada.
Ao gravar uma mensagem grande de serviços da web, será possível receber mensagens WSWS3228E junto com erros SocketTimeoutExceptions quando forem feitas chamadas de serviços da web.
O valor afeta todos os pedidos de conexão HTTP feitos pelo conector de saída HTTP. Use essa propriedade de tempo limite de gravação quando estiver enviando quantidades de dados maiores ou quando a rede estiver lenta e a gravação dos dados demorar mais do que o tempo padrão de 300 segundos. Se erros SocketTimeoutExceptions ocorrerem quando a mensagem for gravada, aumente o valor da propriedade write_timeout.
Informações | Valor |
---|---|
Tipo de D]ados | Número Inteiro |
Unidades | Segundos |
Default | 300 |
Range | 0 (zero) para o máximo inteiro |

Para aplicativos JAX-WS, também é possível configurar essa propriedade customizando a política de transporte HTTP ou utilizando ligações JAX-WS. Para obter informações sobre como configurar essa propriedade usando esses métodos, consulte as informações sobre a configuração de propriedades de transporte HTTP adicionais utilizando o console administrativo ou sobre a configuração das propriedades de política e de ligação de transporte HTTP.