The following two references led me to a solution ...
Without a wrapper class the collection can be retrieved with the @XmlRootElement
jaxb annotation applied to the model ...
@XmlRootElement
public class Widget {
...
}
And then modifying the client call to use the GenericType
class. To retrieve an array you can call ...
Widget[] widgets = ClientBuilder.newClient()
.target("http://host/api")
.path("resource")
.request(MediaType.APPLICATION_XML)
.get(new GenericType<Widget[]>(){});
Or similarly to retrieve a list you can call ...
List<Widget> widgets = ClientBuilder.newClient()
.target("http://host/api")
.path("resource")
.request(MediaType.APPLICATION_XML)
.get(new GenericType<List<Widget>>(){});