@Override
    public void assign(Object obj) {
        if (obj instanceof URI) {
            obj = obj.toString();
        }
        super.assign(obj);
    }
@Test
    public void requireThatURICanBeAssigned() {
        UriFieldValue value = new UriFieldValue();
        String uri = "http://user:pass@localhost:69/path#fragment?query";
        value.assign(URI.create(uri));
        assertEquals(uri, value.getWrappedValue());
    }