Komunikacja EJB z Swing.

0

Witam,

Mam problem z przesyłaniem danych pomiędzy aplikacją Swing a EJB na Glassfish v2.1.
Mianowicie przesłanie około 2000 rekordów generuje ruch na poziomie 20MB, a gdy się zserializuje je do pliku zajmuje około 600kb.

Metoda pierwsza:

public List<EntityDTO> findAll() throws Exception {
    return em.createNamedQuery("Entity.findAll").getResultList();
}

Posiadając około 2000 generuje ruch na poziomie 20MB.

Metoda druga

public List<EntityDTO> findAll() throws Exception {
    List<EntityDTO> result = em.createNamedQuery("Entity.findAll").getResultList();
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
        try {
            ObjectOutputStream oos = new ObjectOutputStream(baos);
            try {
                oos.writeObject(result);
            } finally {
                oos.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    return baos.toByteArray();
}

Generuje ruch na poziomie 600kb.
Czytałem w sieci że można włączyć com.sun.CORBA.encoding.ORBEnableJavaSerialization ale niestety nie pomogło to w niczym.

Czy ktoś mógłby mi pomóc i wskazać jak można zmienić sposób serializacji w Glassfish?
Metoda druga się sprawdza ale jednak przerabianie kilkudziesięciu metod może być trochę uciążliwe.

0

Dziewne zastanwaim się czy to problem glassfisha czy jboss tez tak ma. Probowałeś moze?

0

Nie próbowałem JBossa. Niestety zmiana serwera raczej nie wchodzi w grę.

1 użytkowników online, w tym zalogowanych: 0, gości: 1