Удаленный автономный (приложение) клиент Glassfish 3.1 - PullRequest
1 голос
/ 30 июня 2011

Привет. Я пытаюсь запустить удаленный автономный клиент приложения на сервере Glassfish 3.1.

Проблема очень странная, и я потратил много времени, пытаясь найти ее:

Iустановили следующие свойства iiop:

public static InitialContext setProps4Connect() {

    Properties props = new Properties();
    props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
    props.setProperty("java.naming.factory.url.pkgs","com.sun.enterprise.naming");
    props.setProperty("java.naming.factory.state","com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");

    props.setProperty("org.omg.CORBA.ORBInitialHost", "192.168.0.81");
    props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");

     try {
        InitialContext ic = new InitialContext(props);
        return ic;
      } catch (Exception re) {
        DialogFinancial("soel.utils.setProps4Connect() InitialContext. Σφάλμα κατά τον ορισμό των παραμέτρων!", re.toString(), 2, -1);
        return null;
    }
}

Я использовал следующий код для обновления одной записи параметра "SOM":

    String ID = "SOM";
    try {
        Parameters parameters = parametersFacade.find(ID);
        if(parameters==null){
                throw new Exception("searched protocol not found");
        }

        parameters.setDescriptionel(jTextFieldDescription_EL.getText());
        parameters.setDescriptionen(jTextFieldDescription_EN.getText());
        //****************************************************************//
    //update.setType(jComboBoxType.getSelectedItem().toString());
        parameters.setFuse(jTextFieldFUse.getText());
    parameters.setComments(jTextAreaComments.getText());
        parametersFacade.edit(parameters);

Когда я запускаю свой удаленный клиент,в файле server.log я получаю сообщение об ошибке:

Запрос: InsertObjectQuery (iesoel.remote.entity.Parametersdetails [parametersdetailsPK = null])

А теперьначинается странные вещи.Я пытаюсь получить поле из parameters:

System.out.println (parameters.setDescriptionel ());

Это работает нормально.Теперь, если я изменяю свойство с:

props.setProperty("org.omg.CORBA.ORBInitialHost", "192.168.0.81");

на

props.setProperty("org.omg.CORBA.ORBInitialHost", "www1");

Тогда все работает нормально.

Обратите внимание, что эта проблема только на GlassFish 3.1, а не наGlassFish 3.0.1.Так что, если я понимаю, это не проблема сети.Есть идеи?

1 Ответ

2 голосов
/ 04 июля 2011

После поиска решений я нашел следующую ссылку с решением: http://web.archiveorange.com/archive/v/N2KaoS4G06nDbgqxPmzu

Я добавил в файл persistence.xml следующее:

<properties>
    <property name="eclipselink.weaving.fetchgroups" value="false"/>
</properties>

Я удалил <properties/>, и теперь он работает нормально.

Обратите внимание, что проблема только в Glassfish 3.1, а не в GlassFish 3.0.1.Я думаю, что это ошибка.

...