Client code:
private static final EODistributedObjectStore dos = (EODistributedObjectStore)(EOEditingContext.defaultParentObjectStore()); /** * Invokes the remote method on session to get a named fetch specification. Needed because * the whole eoaccess package is excluded from the client side frameworks. * @param spec Fetch specification name. @param entity Name of the entity for which the fetch specification is for. @return The fetch specification, or null if it is not in the model, or an error occured */ public static EOFetchSpecification getFetchSpecification( String spec, String entity){ //invoke! return (EOFetchSpecification) dos.invokeStatelessRemoteMethodWithKeyPath( "session", "clientSideRequestGetFetchSpecification", new Class[]{String.class, String.class}, new String[]{spec, entity}); }
Server code, in the Session class:
/** * Loads and returns an <tt>EOFetchSpecification</tt> objects for the given * specification and entity name. * @param spec Name of the specification @param entity Name of the entitiy @return A fetch specification, or <tt>null</tt> if it is not found, or an error occurs */ public EOFetchSpecification getFetchSpecification(String spec, String entity){ try{ return EOFetchSpecification.fetchSpecificationNamed(spec, entity); }catch(Exception ex){ return null; } }
courtesy Florijan Stamenkovic