problem vyresen, pokud by to nekoho zajimalo, tak jsem misto AuthenticationSimpleHttpInvokerRequestExecutor pouzil vlastni tridu ktera dedi od CommonsHttpInvokerRequestExecutor. Kod tridy vypada nasledovne:
public class MyAuthenticationCommonsHttpInvokerRequestExecutor extends CommonsHttpInvokerRequestExecutor { protected void executePostMethod(HttpInvokerClientConfiguration config, HttpClient httpClient, PostMethod postMethod) throws IOException { Authentication auth = SecurityContextHolder.getContext().getAuthentication(); if ((auth != null) && (auth.getName() != null) && (auth.getCredentials() != null)) { String name = auth.getName(); String pass = auth.getCredentials().toString(); URI uri = null; try { uri = new URI(config.getServiceUrl()); } catch (URISyntaxException e) { System.out.println("Error getting service url"); } httpClient.getState().setCredentials( new AuthScope(uri.getHost(), uri.getPort()), new UsernamePasswordCredentials(name, pass)); postMethod.setDoAuthentication(true); httpClient.executeMethod(postMethod); } else { executePostMethod(config, httpClient, postMethod); if (logger.isDebugEnabled()) { logger.debug("Unable to set BASIC authentication header as SecurityContext did not provide " + "valid Authentication: " + auth); } } } }
------------ Původní zpráva ------------ Od: radovan deka <[EMAIL PROTECTED]> Předmět: Re: Spring HttpInvoker pres https Datum: 15.3.2008 14:40:12 ---------------------------------------- pridal jsem do kodu nasledujici dva radky: System.setProperty("javax.net.ssl.trustStore", "C://truststore"); System.setProperty("javax.net.ssl.trustStorePassword", "changeit"); a httpInvoker zacal pres https fungovat. Ale objevil se novy problem, kdyz jsem chtel pouzit BASIC autentizaci. Pouzil jsem org.acegisecurity.context.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor, ale dostal jsem nasledujici vyjimku: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching localhost found > ------------ Původní zpráva ------------ > Od: radovan deka <[EMAIL PROTECTED]> > Předmět: Re: Spring HttpInvoker pres https > Datum: 14.3.2008 16:31:27 > ---------------------------------------- > mohl bych poprosit o radu jak vyrobit vlastni CA a jak s ni potom podepsat muj > certifikat? > > > ------------ Původní zpráva ------------ > > Od: Martin Kuba <[EMAIL PROTECTED]> > > Předmět: Re: Spring HttpInvoker pres https > > Datum: 14.3.2008 15:01:06 > > ---------------------------------------- > > radovan deka napsal(a): > > > ano, uvedena vyjimka se objevuje na strane klienta a to i po tom, co jsem > do > > C:\Java\jdk1.6.0_03\jre\lib\cacerts pridal serveruv certifikat. > > > > Mám pocit, že pro ověření ten certifikát nesmí být self-signed. > > Pokud si vyrobíte vlastní CA, tou ho podepíšete a pak > > tu CA dáte do cacert, mělo by to fungovat. > > > > Makub > > -- > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Supercomputing Center Brno Martin Kuba > > Institute of Computer Science email: [EMAIL PROTECTED] > > Masaryk University http://www.ics.muni.cz/~makub/ > > Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 > > -------------------------------------------------------------- > > > > > > > > > > >