Hi Sergey,

It works, thank you very much!

Do you know if there's any adversal effect that should I care when
changing "disable-address-updates" to true?

2012/10/30 Sergey Beryozkin <[email protected]>:
> Hi
>
>
> On 30/10/12 15:01, Jose Escobar wrote:
>>
>> Hello to all,
>>
>> I used apache cxf to implement a restFul Server, everything is working
>> correctly except one thing. I have to get inside the methods of a
>> @Service if the request was made by HTTP or HTTPS, so I inject a
>> UriInfo to get the scheme, but It always return the value of the first
>> request to the service. Scheme, server name and port doesn't change
>> but path do.
>>
>> I tried also with SecurityContext, but I've got the same problem, it
>> looks like it doesn't get updated in different requests.
>>
>> My Tomcat configuration have 2 connectors on 2 different ports, one
>> for http and other for https.
>>
>> My Service class looks like:
>>
>> @Service("timeService")
>> public class TimeService {
>>
>> ...
>>
>> @POST @Path("{url}")
>> @Produces("*/*")
>> @Consumes("*/*")
>> public Response getAS2from(byte[] content, @Context HttpHeaders
>> headers, @Context UriInfo uri)
>> {
>>         boolean sc=false;
>>         logger.info("Scheme: {}", uri.getAbsolutePath().toString());
>>         logger.info("Scheme3: {}",uri.getAbsolutePath().getScheme());
>>         if(((uri.getAbsolutePath().getScheme())!= null)&&
>> (uri.getAbsolutePath().getScheme()).equalsIgnoreCase("https")){
>>                 logger.info("Recibiendo POST por HTTPS...");
>>                 sc=true;
>>         }
>>         else{
>>                 logger.info("Recibiendo POST por HTTP...");
>>         }
>>      ...
>> }
>>
>>
>> @POST
>> @Produces("*/*")
>> @Consumes("*/*")
>> public Response getAS2fromR(byte[] content, @Context HttpHeaders
>> headers, @Context UriInfo uri)
>> {
>>         boolean sc=false;
>>         logger.info("Scheme: {}", uri.getAbsolutePath().toString());
>>         logger.info("Scheme3: {}",uri.getAbsolutePath().getScheme());
>>         //Tratar mensaje AS2
>>         if(((uri.getAbsolutePath().getScheme())!= null)&&
>> (uri.getAbsolutePath().getScheme()).equalsIgnoreCase("https")){
>>                 logger.info("Recibiendo POST por HTTPS...");
>>                 sc=true;
>>         }
>>         else{
>>                 logger.info("Recibiendo POST por HTTP...");
>>         }
>>      ...
>> }
>>
>>
>>
>> Any suggestions about this???
>
>
> I think it is to do with the default address overwriting, can you please set
> CXFServlet "disable-address-updates" parameter to "true" and see if it helps
> ?
>
> Cheers, Sergey
>
>>
>>
>> Thank you very much!
>
>
>

Reply via email to