[rabbitmq-discuss] Http API: new user
SAG - Jonathan Andrés
jandres at omie.es
Thu Aug 22 13:37:39 BST 2013
No, I can't see anything in the logs, just the exception in the client.
I have tried with CURL (curl -i -u guest:guest -H "content-type:applicacion/json" -XPUT -d '{"password":"secret", "tags":"administrator"}' http://localhost:15672/api/users/newUser )
But I get the error: 415 Unsupported Media Type.
-----Mensaje original-----
De: Simon MacMullen [mailto:simon at rabbitmq.com]
Enviado el: jueves, 22 de agosto de 2013 12:48
Para: Discussions about RabbitMQ
CC: SAG - Jonathan Andrés
Asunto: Re: [rabbitmq-discuss] Http API: new user
That looks superficially like it should work. Does anything show up in the logs when it fails?
Cheers, Simon
On 22/08/2013 11:34AM, jandres wrote:
> Hi,
>
> i'm trying to create a new user using the HTTP API.
>
> I can list the users that already exists, but when I try to create a
> new one, I get this error:
>
> org.springframework.web.client.ResourceAccessException: I/O error on
> PUT request for "http://localhost:15672/api/users/newUser":Software
> caused connection abort: recv failed; nested exception is java.net.SocketException:
> Software caused connection abort: recv failed
>
>
> I'm using Spring, and this is my code:
>
> ---------------
> ConfigurableApplicationContext context = new
> ClassPathXmlApplicationContext("config/client-rest-config.xml");
>
> DefaultHttpClient httpClient = context.getBean(DefaultHttpClient.class);
> RestTemplate restTemplate = context.getBean(RestTemplate.class);
>
> String uri = "http://localhost:15672/api/users/newUser";
> HttpHeaders headers = new HttpHeaders();
> headers.setContentType( MediaType.APPLICATION_JSON );
>
> String pass = "{\"name\":\"newUser\",
> \"password\":\"secret\", \"tags\":\"administrator\"}";
> HttpEntity<String> request= new HttpEntity<String>( pass,
> headers );
>
> UsernamePasswordCredentials creds =
> new UsernamePasswordCredentials("guest", "guest");
> AuthScope authScope = new AuthScope(AuthScope.ANY_HOST,
> AuthScope.ANY_PORT, AuthScope.ANY_REALM);
>
> httpClient.getCredentialsProvider().setCredentials(authScope,
> creds);
> try
> {
> restTemplate.put( uri, request);
> }catch(Exception e){
> System.err.println(e);
> }
> try
> {
> restTemplate.exchange(uri, HttpMethod.PUT, request, Object.class);
> }catch(Exception e){
> System.err.println(e);
> }
> Object usuarios =
> restTemplate.getForObject("http://localhost:15672/api/users", Object.class);
> System.out.println("OK");
> ----------
>
> I get the error in the lines:
>
> restTemplate.put( uri, request);
> ...
> restTemplate.exchange(uri, HttpMethod.PUT, request, Object.class);
>
> But i can list the users in the line:
>
> Object usuarios =
> restTemplate.getForObject("http://localhost:15672/api/users",
> Object.class);
>
>
> Thank you!
>
>
>
>
>
>
> --
> View this message in context:
> http://rabbitmq.1065348.n5.nabble.com/Http-API-new-user-tp29013.html
> Sent from the RabbitMQ mailing list archive at Nabble.com.
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
--
Simon MacMullen
RabbitMQ, Pivotal
More information about the rabbitmq-discuss
mailing list