cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Kulp (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (CXF-2324) HTTP Client ProxyServerPort shouldn't be an xs:int in the http-conf.xsd
Date Mon, 09 Nov 2009 21:14:32 GMT

     [ https://issues.apache.org/jira/browse/CXF-2324?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Daniel Kulp resolved CXF-2324.
------------------------------

       Resolution: Fixed
    Fix Version/s: 2.2.5

> HTTP Client ProxyServerPort shouldn't be an xs:int in the http-conf.xsd
> -----------------------------------------------------------------------
>
>                 Key: CXF-2324
>                 URL: https://issues.apache.org/jira/browse/CXF-2324
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 2.1.4
>            Reporter: Nils Winkler
>            Assignee: Daniel Kulp
>             Fix For: 2.2.5
>
>
> In the {{cxf-rt-transports-http}} jar, the {{schemas/wsdl/http-conf.xsd}} file contains
the following definition for the HTTP Client's {{ProxyServerPort}} element:
> {code:xml}
> <xs:attribute name="ProxyServerPort" type="xs:int" use="optional">
> 	<xs:annotation>
> 		<xs:documentation>
> 		Specifies the port number used by the proxy server.
> 		</xs:documentation>
> 	</xs:annotation>      
> </xs:attribute>
> {code}
> The use of {{xs:int}} makes it impossible to define the {{ProxyServerPort}} value through
one of Spring's {{PropertyPlaceholderConfigurer}}, e.g. like this:
> {code:xml}
> <http:conduit name="{http://xyz.com/abc/service}AbcInterfacePort.http-conduit">
> 	<http:client ProxyServer="$(proxy.name)" ProxyServerPort="$(proxy.port)"/>
> 	<http:tlsClientParameters secureSocketProtocol="SSL" />
> </http:conduit>
> {code}
> This fails on startup, since the XML validation of the context fails, complaining that
{{$(proxy.port)}} is not a valid int value.
> I know that one can disable schema validation through a CXF environment parameter, but
this doesn't work when using a custom Spring context in the web application. I had to resort
to subclassing Spring's {{XmlWebApplicationContext}} class with the following code to successfully
start the application:
> {code}
> package com.sungard.banking.spring.web;
> import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
> import org.springframework.web.context.support.XmlWebApplicationContext;
> public class NonValidatingXmlWebApplicationContext extends
> 		XmlWebApplicationContext {
> 	protected void initBeanDefinitionReader(
> 			XmlBeanDefinitionReader beanDefinitionReader) {
> 		super.initBeanDefinitionReader(beanDefinitionReader);
> 		beanDefinitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE);
> 		beanDefinitionReader.setNamespaceAware(true);
> 	}
> }
> {code}
> The same issue is reported in the Spring core project
> * http://jira.springframework.org/browse/SPR-3180
> * http://jira.springframework.org/browse/SPR-4847
> With the mentioned Spring tx bean, it's at least possible to use standard bean definitions
instead of the XSD-based ones. For HTTP Client, I didn't find any examples that would allow
me to do that.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message