2010-09-10 10 views
5

Saludo. Estoy jugando con el marco de Restlet, cuando estoy ejecutando el código siguiente y la excepción Internal Connector Error (1002): ningún conector de cliente disponible admite el protocolo requerido: 'HTTP'.Ningún conector de cliente disponible admite el protocolo requerido: 'HTTP'

ClientResource cr = new ClientResource(
"http://127.0.0.1:8888/user/123"); 
UserResource resource = cr.wrap(UserResource.class); 
User user = new User(); 
user.setName("xxx"); 
user.setPassword("xxx"); 
UserValidation userValidation = resource.retrieve(user); 
if (userValidation != null) { 
    System.out.println("Welcome, User"); 
} else { 
    System.out.println("Not a vliad user"); 
} 

¿Hay alguien aquí probado el Retlet antes? ¿Puede guiarme hacia la dirección correcta? ¿O puede redireccionar al útil tutorial?

+2

¿Qué versión de Restlet estás usando? ¿Qué jarras pusiste en el classpath? ¿Has intentado agregar 'org.restlet.ext.net' o' org.restlet.ext.httpclient' en classpath? – Bruno

+0

¡Esos frascos funcionaron totalmente! agregue el ssl ext allí también. – Atma

Respuesta

4

Restlet depende de "conectores" para implementar clientes y servidores. Son como complementos, ya que son modulares y puede elegir fácilmente cuál usar. En tiempo de ejecución, Restlet comprueba la ruta de clase para ver qué conectores están disponibles y los carga. Cada conector se empaqueta en 1 archivo JAR para el conector en sí más N archivos para dependencias. De modo que puede hacer que un conector esté disponible para el marco simplemente agregando los JAR relevantes al classpath.

Debe estar utilizando Restlet 1.0 o 1.1, ya que 2.0 incluye conectores de cliente y servidor HTTP simples incorporados. Te sugiero que actualices a 2.0; es mucho más fácil de desarrollar porque un solo JAR contiene el marco, el motor y los conectores incorporados; con 1.1, a veces puede necesitar 6-7 JAR solo para probar una aplicación simple.

+0

Usando v2.1 y todavía da este error. – Chloe

Cuestiones relacionadas