title: Micronaut HttpResponse body CompositeByteBuf type throws io.netty.util.IllegalReferenceCountException: refCnt: 0
body: <p>I am using Micronaut <code>@Client</code> to call external service which returns me response 
   of type <code>FullNettyClientHttpResponse</code> and it has body in the form of <code>CompositeByteBuf(freed, components=1);</code> I want to convert <code>CompositeByteBuf</code> to a human readable <code>toString</code> message but it has failing with <code>IllegalReferenceCountException</code>. Please provide suggestion how I can get the text message here.</p>
  
  <pre><code>@Client(value = "url")
  public interface MyClient {
  
      @Post(consumes = MediaType.APPLICATION_XML, produces = MediaType.APPLICATION_XML)
      HttpResponse call(String body);
  }
  
  
  class service{
  
  void method(){
    HttpResponse httpResponse = client.call(request);// returns FullNettyClientHttpResponse with body "Optional[CompositeByteBuf(freed, components=1)]"
    Optional&lt;CompositeByteBuf&gt; reBody = httpResponse.getBody(CompositeByteBuf.class);
    if(reBody.isPresent()){
        CompositeByteBuf b=reBody.get();
        byte[] req = new byte[b.readableBytes()];
        b.readBytes(req);
        String body = new String(req, CharsetUtil.UTF_8).substring(0, req.length - 
        System.getProperty("line.separator").length());
        System.out.println("server receive order : " + body);
   }
  }
  </code></pre>
  
  <p>I tried to get the message using toString but failed with IllegalReferenceCountException.</p>
  
  <pre><code>b.toString(Charset.defaultCharset()); // Method threw 'io.netty.util.IllegalReferenceCountException' exception.
  </code></pre>
  
  <p>toString returns CompositeByteBuf.</p>
  
  <pre><code>b.toString(); //CompositeByteBuf(freed, components=1);
  </code></pre>