Re: problem with ExtendedType in Cayenne 4.2

Andrus Adamchik <[email protected]>
Newsgroups gmane.comp.java.cayenne.user
Message-ID <[email protected]>
Hi Andrea,

"materializeObject" method should still be called of course. When registering custom types within the adapter, I'd usually override "configureExtendedTypes":

@Override
protected void configureExtendedTypes(ExtendedTypeMap map) {
    super.configureExtendedTypes(map);
    map.registerType(new SourceIdType());
}

I suspect it might make a difference, considering somewhat complicated type override rules in the adapter.

Andrus


> On Jun 29, 2020, at 11:04 AM, Andrea Biasillo <[email protected]> wrote:
> 
> Hi!
> 
> We are migrating from 4.0.2 to 4.2. We have a class that implements ExtendedType. 
> In 4.0.2 the method:
> 
> public SourceId materializeObject(ResultSet rs, int index, int type) throws Exception 
> 
> was invoked, but not in 4.2.
> 
> We register our class in this way:
> 
> public class DataloyOracleAdapter extends OracleAdapter {
> 
> 	public DataloyOracleAdapter(@Inject RuntimeProperties runtimeProperties, 
> 			@Inject(Constants.SERVER_DEFAULT_TYPES_LIST) List<ExtendedType> defaultExtendedTypes,
> 			@Inject(Constants.SERVER_USER_TYPES_LIST) List<ExtendedType> userExtendedTypes, 
> 			@Inject(Constants.SERVER_TYPE_FACTORIES_LIST) List<ExtendedTypeFactory> extendedTypeFactories,
> 			@Inject(Constants.SERVER_RESOURCE_LOCATOR) ResourceLocator resourceLocator, 
> 			@Inject ValueObjectTypeRegistry valueObjectTypeRegistry) {
> 		super(runtimeProperties, defaultExtendedTypes, userExtendedTypes, extendedTypeFactories, resourceLocator,
> 				valueObjectTypeRegistry);
> 		setSupportsGeneratedKeys(false);
> 		//super.setPkGenerator(new DataloyPkGenerator());
> 		
> 		setSupportsBatchUpdates(false);
> 		this.extendedTypes.registerType(new SourceIdType());
> 	}
> 
> 
> }
> 
> 
> What is wrong? What should be changed?
> 
> Many regards,
> Andrea
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.