title: Can't Json.Unmarshal to a struct
body: <p>I've got a situation, where I want to transfer messages with a TCP Connection from one server to another. 
  I've created a struct on both servers: </p>
  
  <pre><code>type DataTransferObject struct {
      Name  string `json:"name"`
      Value string `json:"value"`
  }
  </code></pre>
  
  <p>and with</p>
  
  <pre><code>dto := DataTransferObject{
      Name:  "Name",
      Value: name,
  }
  
  jsonDTO, _ := json.Marshal(dto)
  connection.Write(jsonDTO)
  </code></pre>
  
  <p>I'm sending it to the other server. The server receives a message, but when I try to unmarshal it like this: </p>
  
  <pre><code>var MessageData DataTransferObject
  
          err = json.Unmarshal(message, &amp;MessageData)
          fmt.Println(err.Error())
  </code></pre>
  
  <p>the MessageData struct stays nil. However when I print the message with     </p>
  
  <pre><code>fmt.Println(string(message))
  </code></pre>
  
  <p>I get a string like this : {"Name":"testname","Value":"testvalue"}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             </p>