Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сериализация объектов 
:(
    Опции темы
ShurikA
Дата 9.2.2007, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Есть вот такая конструкция классов:
Код

package dataclasses.DataClasses;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.util.*;

import java.io.Serializable;
import java.awt.Rectangle;
import java.awt.geom.AffineTransform;
import java.awt.image.BufferedImage;
import javax.swing.JLabel;

/**
 * <p>Title: Apis </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2006</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class DesignTemplate implements Serializable{
    private static final long serialVersionUID = 20L;
    
    private ArrayList imgTemplates = new ArrayList();
    private ArrayList textTemplates = new ArrayList();
    private double PREVIEW_RATIO = 1.0;
    private String bgImagePath;
    private int tId;
    
    public DesignTemplate(int id) {
        this.tId = id;
    }
    
    public void AddImgTmpl(ImgTmpl tmpl) {
        imgTemplates.add(tmpl);
    }
    
    public int GetID() {
        return this.tId;
    }
    
    public ArrayList GetImgTmpls() {
        return this.imgTemplates;
    }
    
    public void AddTextTmpl(TextTmpl tmpl){
        textTemplates.add(tmpl);
    }
    
    public ArrayList GetTxetTmpls() {
        return this.textTemplates;
    }
    
    public void SetBgImagePath(String path) {
        this.bgImagePath = path;
    }
    
    public String GetBgImagePath() {
        return this.bgImagePath;
    }
    
    public void SetPreviewRatio(double r){
        this.PREVIEW_RATIO = r;
    }
    
    public static class ImgTmpl implements Serializable{
        private static final long serialVersionUID = 21L;
        
        private Rectangle rect = new Rectangle();
        private String imgFileName = null;
        private int rotation = 0;
        
        public ImgTmpl(Rectangle r){
            this.rect.setBounds(r);
        }
        
        public Rectangle GetTmplRectanlge() {
            return this.rect;
        }
        
        public void SetImgFileName(String name) {
            this.imgFileName = name;
        }
        
        public String GetImgFileName() {
            return this.imgFileName;
        }
        
        public void SetRotation(int r){
            this.rotation = r;
        }
        
        public int GetRotation(){
            return this.rotation;
        }
    }
    
    public static class TextTmpl implements Serializable{
        private static final long serialVersionUID = 22L;
        
        private Rectangle rect = new Rectangle();
        private String textImgFileName = null;
        private String text = null;
        
        public TextTmpl(Rectangle r){
            this.rect.setBounds(r);
        }
        
        public Rectangle GetTmplRectanlge() {
            return this.rect;
        }
        
        public String GetTextBuffer() {
            return this.text;
        }
        
        public void SetText(String str){
            this.text = str;
        }
        
        public void SetTextImageFileName(String fName){
            this.textImgFileName = fName;
        }
        
        public String GetTextImageFileName(){
            return this.textImgFileName;
        }
    }
}


объект этого класса формируется в сервлете и посылается клиенту.

По какой то причине у меня вылетает следующая ошибка:
Код

java.io.InvalidClassException: dataclasses.DataClasses.DesignTemplate$ImgTmpl; local class incompatible: stream classdesc serialVersionUID = -4994097179268699902, local class serialVersionUID = 21


хотя, как видите serialVersionUID  пропицан жестко.
Пробовал по новой перекомпелировать сервлет - не помогло.


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
chief39
Дата 9.2.2007, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 15
Всего: 77



Это значит что классы на клиенте и сервере у тебя разные. Хоть малость, но разные.
прописан-то жёстко 21, а вот второй уид, на сервере, я так понимаю - "не прописан" уидом.

Я с этим накопался, когда инструментровал JAMONом transfer object'ы и забывал проинструментированый на клиент отдать.




Цитата(ShurikA @  9.2.2007,  18:58 Найти цитируемый пост)
Пробовал по новой перекомпелировать сервлет - не помогло. 

А что на клиенте?
Отдал ли ты ему перекомпиленный DesignTemplate после перекомпайла сервлета и перед запуском теста?


--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
ShurikA
Дата 10.2.2007, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зануда
***


Профиль
Группа: Завсегдатай
Сообщений: 1364
Регистрация: 29.10.2005
Где: Канада

Репутация: нет
Всего: 3



Цитата(chief39 @  9.2.2007,  19:01 Найти цитируемый пост)
а вот второй 

какой второй?


Цитата(chief39 @  9.2.2007,  19:01 Найти цитируемый пост)
А что на клиенте?
Отдал ли ты ему перекомпиленный DesignTemplate после перекомпайла сервлета и перед запуском теста? 

да


--------------------
Если долго мучиться, что нибудь получится...
user posted image
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.