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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> опять Hibernate, org.hibernate.PropertyAccessException 
:(
    Опции темы
Rusico
Дата 3.12.2007, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



Привет. Есть у меня программулька на RMI.
Создаю два класса отношение между которыми ManyToOne:

Код

@Entity
@Table(name = "contract")
public class ContractImpl extends MainObjectImpl implements Contract, GeneralObjectListener
{
  @ManyToOne(cascade = {CascadeType.PERSIST, CascadeType.MERGE}, targetEntity = CompanyImpl.class)
  @JoinColumn(name = "seller_id")
  public Company seller;
  
  @ManyToOne(cascade = {CascadeType.PERSIST, CascadeType.MERGE}, targetEntity = CompanyImpl.class)
  @JoinColumn(name = "buyer_id")
  public Company buyer;
  
  public ContractImpl() throws RemoteException {
    super();
  }

  public Company getSeller() {
    return seller;
  }

  public void setSeller(Company seller) {
    this.seller = seller;
  }
  
  public Company getBuyer() {
    return buyer;
  }

  public void setBuyer(Company buyer) {
    this.buyer = buyer;
  }
}



@Entity
@Table(name = "company")
public class CompanyImpl extends MainObjectImpl implements Company
{
  @Column(name = "inn")
  private String inn;

  @Column(name = "addres")
  private String address;

  ...................
}

// Оба класса являются потомками суперкласса
@MappedSuperclass
public abstract class MainObjectImpl extends GeneralObjectImpl implements MainObject
{
  @Id
  @Column(name = "id")
  @GeneratedValue(strategy = GenerationType.AUTO)
  private Long id;

  @Column(name = "name")
  private String name;

  public Long getId() throws RemoteException{
    return this.id;
  }
  
  public void setId(Long id) throws RemoteException{
    this.id = id;
  }
  
  public String getName() throws RemoteException{
    return this.name;
  }
  
  public void setName(String name) throws RemoteException{
    this.name = name;
  }
}


Создаются все таблицы, и вроде всё ок, только когда я добавляю в Contract Company и пытаюсь сохранить, то получаю исключение: 
Код

org.hibernate.PropertyAccessException: could not get a field value by reflection getter of bum.realizations.objects.CompanyImpl.id
        at org.hibernate.property.DirectPropertyAccessor$DirectGetter.get(DirectPropertyAccessor.java:35)
org.hibernate.PropertyAccessException: could not get a field value by reflection getter of bum.realizations.objects.CompanyImpl.id
        at org.hibernate.tuple.entity.AbstractEntityTuplizer.getIdentifier(AbstractEntityTuplizer.java:183)
        at org.hibernate.persister.entity.AbstractEntityPersister.getIdentifier(AbstractEntityPersister.java:3591)
        at org.hibernate.property.DirectPropertyAccessor$DirectGetter.get(DirectPropertyAccessor.java:35)
        at org.hibernate.persister.entity.AbstractEntityPersister.isTransient(AbstractEntityPersister.java:3307)
        at org.hibernate.tuple.entity.AbstractEntityTuplizer.getIdentifier(AbstractEntityTuplizer.java:183)
        at org.hibernate.engine.ForeignKeys.isTransient(ForeignKeys.java:181)
        at org.hibernate.persister.entity.AbstractEntityPersister.getIdentifier(AbstractEntityPersister.java:3591)
        at org.hibernate.persister.entity.AbstractEntityPersister.isTransient(AbstractEntityPersister.java:3307)
        at org.hibernate.engine.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:218)
        at org.hibernate.engine.ForeignKeys.isTransient(ForeignKeys.java:181)
        at org.hibernate.type.EntityType.getIdentifier(EntityType.java:397)
        at org.hibernate.engine.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:218)
        at org.hibernate.type.ManyToOneType.nullSafeSet(ManyToOneType.java:78)
        at org.hibernate.type.EntityType.getIdentifier(EntityType.java:397)
        at org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:1997)
        at org.hibernate.type.ManyToOneType.nullSafeSet(ManyToOneType.java:78)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2371)
        at org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:1997)
        at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2307)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2371)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2607)
        at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2307)
        at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2607)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
        at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:142)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:142)
        at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
        at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
        at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
        at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
        at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:166)
        at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:166)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:82)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
        at sun.rmi.transport.Transport$1.run(Transport.java:159)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:82)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
        at sun.rmi.transport.Transport$1.run(Transport.java:159)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalArgumentException: Can not set java.lang.Long field bum.realizations.objects.MainObjectImpl.id to $Proxy22
        at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146)
        at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at sun.reflect.UnsafeFieldAccessorImpl.ensureObj(UnsafeFieldAccessorImpl.java:37)
        at sun.reflect.UnsafeObjectFieldAccessorImpl.get(UnsafeObjectFieldAccessorImpl.java:18)
        at java.lang.reflect.Field.get(Field.java:358)
        at org.hibernate.property.DirectPropertyAccessor$DirectGetter.get(DirectPropertyAccessor.java:32)
        ... 36 more
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalArgumentException: Can not set java.lang.Long field bum.realizations.objects.MainObjectImpl.id to $Proxy22
        at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146)
        at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150)
        at sun.reflect.UnsafeFieldAccessorImpl.ensureObj(UnsafeFieldAccessorImpl.java:37)
        at sun.reflect.UnsafeObjectFieldAccessorImpl.get(UnsafeObjectFieldAccessorImpl.java:18)
        at java.lang.reflect.Field.get(Field.java:358)
        at org.hibernate.property.DirectPropertyAccessor$DirectGetter.get(DirectPropertyAccessor.java:32)
        ... 36 more


Шо делать-то? я так понимаю, что он пытается обратиться к полю id не через getId(), а на прямую, и не может, так как получает он не CompanyImpl, а Company обёрнутый в Proxy
PM MAIL   Вверх
AlexeyVorotnikov
Дата 3.12.2007, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Посмотрите пункт 2.2.1 документации к Hibernate Annotations. Там сказано, что если @Id стоит у поля, то используется прямой доступ к полю. А если @Id стоит у метода getId(), то для доступа будет использоваться метод.


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
Rusico
Дата 3.12.2007, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



Спасибо.

Переделал вот так:
Код

public abstract class MainObjectImpl extends GeneralObjectImpl implements MainObject
{
  private Long id;
  
  public MainObjectImpl() throws RemoteException {
    super();
  }
  
  @Id
  @Column(name = "id")
  @GeneratedValue(strategy = GenerationType.AUTO)
  public Long getId() throws RemoteException{
    return this.id;
  }
  
  public void setId(Long id) throws RemoteException{
    this.id = id;
  }
}


но проблема к сожалению осталась

Добавлено через 1 минуту и 52 секунды
однако Exception изменился

Код

org.hibernate.PropertyAccessException: IllegalArgumentException occurred calling getter of bum.realizations.objects.MainObjectImpl.id
        at org.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:171)
        at org.hibernate.tuple.entity.AbstractEntityTuplizer.getIdentifier(AbstractEntityTuplizer.java:183)
        at org.hibernate.persister.entity.AbstractEntityPersister.getIdentifier(AbstractEntityPersister.java:3591)
        at org.hibernate.persister.entity.AbstractEntityPersister.isTransient(AbstractEntityPersister.java:3307)
        at org.hibernate.engine.ForeignKeys.isTransient(ForeignKeys.java:181)
        at org.hibernate.event.def.AbstractSaveEventListener.getEntityState(AbstractSaveEventListener.java:512)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:80)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
        at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
        at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
        at org.hibernate.engine.CascadingAction$5.cascade(CascadingAction.java:218)
        at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268)
        at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:216)
        at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)
        at org.hibernate.engine.Cascade.cascade(Cascade.java:130)
        at org.hibernate.engine.Cascade.cascade(Cascade.java:97)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.cascadeOnUpdate(DefaultSaveOrUpdateEventListener.java:357)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:329)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:223)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:89)
        at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
        at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
        at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
        at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:495)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:142)
        at bum.realizations.objects.MainObjectImpl.saveObject(MainObjectImpl.java:83)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
        at sun.rmi.transport.Transport$1.run(Transport.java:159)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalArgumentException: java.lang.ClassCastException@1f2edd2
        at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:145)
        ... 39 more


PM MAIL   Вверх
AlexeyVorotnikov
Дата 3.12.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



У меня есть смутное подозрение, что аннотировать нужно интерфейс, а не имплементирующий его класс.
Я подозреваю, что этот интерфейс MainObject.


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
Rusico
Дата 3.12.2007, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



Тогда при сохранении session.saveOrUpdate(this) ругается:
Код

org.hibernate.MappingException: Unknown entity: bum.realizations.objects.CompanyImpl
        at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:550)
        at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1338)
        ........................................


даже пробовал делать так: 
Код

String className = "bum.interfaces.objects."+this.getClass().getSimpleName().substring(0, this.getClass().getSimpleName().length()-4);
interfaceClass = ClassesLoader.getInstance().loadClass(className);
session.saveOrUpdate(interfaceClass.cast(this));


тоже самое.

К тому, когда я стал писать аннотации в интерфейсах, то мне пришлось в каждом из них определять @Id, так как Hibernate ругался.
PM MAIL   Вверх
Tony
  Дата 3.12.2007, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 6
Всего: 12



 smile  Модеры и админы!!!!!!!!! Давно уже пора сделать ветку на ява форуме ORM. Чтоб бедные люди не постили по разным форумам с Хибером, Топлинк и про4ими ОРМ. smile 


--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
Rusico
Дата 4.12.2007, 07:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



согласен smile Ну сделайте пожал.....smile smile 
PM MAIL   Вверх
AlexeyVorotnikov
Дата 4.12.2007, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Честно говоря, у меня идеи кончились. Мне такая задача впервые попадается: сохранять через Hibernate удалённые объекты...
Может быть если у меня будет время, я попробую сам что-то подобное сделать и поиграться с ним, но не обещаю.


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
tux
Дата 4.12.2007, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Я подозреваю что сохранить переданный по RMI объект, созданный Hibernate вообще невозможно. По многим причинам. В частности, для реализации интерсепторов Hibernate использует CGLIB, который генерит байт-код на лету. Кроме того, думаю что есть сложности с сериализацией сессии Hibernate, которая там же в объекте может храниться, объекта транзакции и т.п. Поступайте так - перед передачей объекта по сети, копируйте его в обычный бин, при приеме из сети наоборот из бина в объект Hibernate.
PM MAIL Skype GTalk Jabber YIM   Вверх
Rusico
Дата 4.12.2007, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



Цитата(tux @ 4.12.2007,  10:39)
Поступайте так - перед передачей объекта по сети, копируйте его в обычный бин, при приеме из сети наоборот из бина в объект Hibernate.

Если чесно, то не понял, что значит копировать в обычный бин?
PM MAIL   Вверх
Kangaroo
Дата 4.12.2007, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


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

Репутация: 14
Всего: 104



Цитата(Rusico @  4.12.2007,  10:48 Найти цитируемый пост)
Если чесно, то не понял, что значит копировать в обычный бин? 

Я так подозреваю, что tux говорил о простом копировании полей с помощью сетеров/гетеров.
То есть у вас будет два класса с одинаковыми полями - тот что перередаете и локальный.


--------------------
Lost....
PM MAIL MSN   Вверх
Rusico
Дата 5.12.2007, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 17.5.2004

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



Но ведь в JBoss всё и так работает?
PM MAIL   Вверх
AlexeyVorotnikov
Дата 5.12.2007, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Rusico @ 5.12.2007,  18:11)
Но ведь в JBoss всё и так работает?

Что "всё" и как "так" работает в JBoss?


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

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

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


 




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


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

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