Re: 1C Java j-interop
От: Elisy http://www.1centerprise.com
Дата: 04.01.13 06:41
Оценка:
Здравствуйте, nonameletters, Вы писали:

N>Народ помогите. Задача следующая, использую COM подключиться к 1с приложением написанном на JAVA. Почитал стать и пришел к выводу что лучше использовать j-interop, т.к. это чистая JAVA без длл и всякой всячины. Нашел примеры, но не получается даже подключиться к 1С.Пишет The attempted logon is invalid. This is either due to a bad username or authentication information. [0xC000006D]. По сообщению понятно что не могу авторизоваться, перепроверил всю авторизационную информацию, никаких результатов. Встал опрос может как-то надо зарегистрировать com-объект почитал наткнулься что надо воспользоваться dcomcnfg понастраивал результат тот-же.

N>Народ может кто сталкивался с такой проблемой, опишите всю процедуру подключения а не просто кусок кода на JAV'E

Есть вариант подключения не через COM, а через http
http://www.1csoftware.com/connector/ru-ru

import net.elisy.businessconnector.*;
import net.elisy.businessconnector.types.*;
import net.elisy.businessconnector.vm.*;

          Connection connection = new Connection(connectionString);
            connection.open();
            connection.login();
            connection.getLicenseManager().activate(serialNumber, companyName, activationKey);
            GlobalContext globalContext = new GlobalContext(connection);

        StructureType s = new StructureType(globalContext);
        s.put("null", new NullType());
        s.put("undefined", new UndefinedType());

        StringType st = new StringType();
        st.setValue("String1");
        s.put("string", st);
        NumberType nt = new NumberType();
        nt.setValue(12345.678);
        s.put("number", nt);
        DateType dt = new DateType();
        dt.setValue(new Date());
        s.put("date", dt);
        BooleanType bt = new BooleanType();
        bt.setValue(true);
        s.put("boolean", bt);

        StringBuilder script = new StringBuilder();
        script.append("result = new Structure();\n");
        script.append("result.insert(\"null\", parameters.null);\n");
        script.append("result.insert(\"undefined\", parameters.undefined);\n");
        script.append("result.insert(\"string\", parameters.string);\n");
        script.append("result.insert(\"number\", parameters.number);\n");
        script.append("result.insert(\"date\", parameters.date);\n");
        script.append("result.insert(\"boolean\", parameters.boolean);\n");
        StructureType result = (StructureType)globalContext.getServerModule("ElisyBusinessConnector").invoke("Invoke", new Object[] { script.toString(), s });
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.