Hej :)
Zaczynam poznawać JPA i chciałem przetestować bibliotekę Ebean: http://www.avaje.org
Stworzyłem w projekcie persistent Unit dla postgres'a:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="ebeanPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <class>t.Paczka</class>
    <properties>
      <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/KBD"/>
      <property name="javax.persistence.jdbc.password" value="postgres"/>
      <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>
      <property name="javax.persistence.jdbc.user" value="postgres"/>
    </properties>
  </persistence-unit>
</persistence>

Na podstawie tego stworzyłem przez NetBeans'a klase encji: new -> Entity class from database.
Dalej tworze obiekt w metodzie main i wypełniam go danymi i próbuję użyć metody save biblioteki Ebean.

@Entity
@Table(name = "paczka", catalog = "KBD", schema = "test")
public class Paczka implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "id", nullable = false)
    private Integer id;
    @Basic(optional = false)
    @Column(name = "nadawca", nullable = false, length = 2147483647)
    private String nadawca;
    @Basic(optional = false)
    @Column(name = "odbiorca", nullable = false, length = 2147483647)
    private String odbiorca;
	...}
	
    public static void main(String[] args) {
       
        Paczka paczka = new Paczka();
		//paczka.setId() ma isc z sekwencji postgresa
        paczka.setNadawca("ja");
        paczka.setOdbiorca("ty");
        Ebean.save(paczka);
        
    }

Niestety otrzymuje błąd:

Exception in thread "main" javax.persistence.PersistenceException: Error getting sequence nextval
        at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.getMoreIds(SequenceIdGenerator.java:213)
        at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.loadMoreIds(SequenceIdGenerator.java:163)
        at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.nextId(SequenceIdGenerator.java:118)
        at com.avaje.ebeaninternal.server.deploy.BeanDescriptor.nextId(BeanDescriptor.java:1205)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.setIdGenValue(DefaultPersister.java:1138)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.insert(DefaultPersister.java:386)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.saveVanillaInsert(DefaultPersister.java:364)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.saveVanillaRecurse(DefaultPersister.java:348)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.saveRecurse(DefaultPersister.java:295)
        at com.avaje.ebeaninternal.server.persist.DefaultPersister.save(DefaultPersister.java:269)
        at com.avaje.ebeaninternal.server.core.DefaultServer.save(DefaultServer.java:1537)
        at com.avaje.ebeaninternal.server.core.DefaultServer.save(DefaultServer.java:1527)
        at com.avaje.ebean.Ebean.save(Ebean.java:538)
        at t.Main.main(Main.java:29)
Caused by: org.postgresql.util.PSQLException: ERROR: cross-database references are not implemented: "kbd.test.paczka_seq"
  Pozycja: 16
        at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
        at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
        at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273)
        at com.avaje.ebeaninternal.server.lib.sql.ExtendedPreparedStatement.executeQuery(ExtendedPreparedStatement.java:150)
        at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.getMoreIds(SequenceIdGenerator.java:194)
        ... 13 more
Java Result: 1

Tabele mam w schemacie "test" w bazie KBD, tak samo sekwencje.
Więc o co mu chodzi z tym dostępem do tabel w różnych schematach/bazach danych ?
Tutaj CREATE SQL tabelki

CREATE TABLE test.paczka
(
  id serial NOT NULL,
  nadawca character varying NOT NULL,
  odbiorca character varying NOT NULL,
  CONSTRAINT paczka_pkey PRIMARY KEY (id),
)
WITH (
  OIDS=FALSE
);
ALTER TABLE test.paczka OWNER TO postgres;