forum.bitel.ru
http://forum.bitel.ru/

Непонятная ошибка скрипта
http://forum.bitel.ru/viewtopic.php?f=19&t=12032
Страница 1 из 1

Автор:  dmitry_P [ 22 окт 2016, 08:43 ]
Заголовок сообщения:  Непонятная ошибка скрипта

Есть скриптик поведения на событие добавления услуги RSCM добавляет в договор тариф с ценами услуг модуля.
Код:
import ru.bitel.bgbilling.kernel.contract.api.server.bean.*;
import java.util.*;
import bitel.billing.common.*;
import bitel.billing.server.util.*;
import ru.bitel.bgbilling.modules.rscm.common.bean.*;
import ru.bitel.bgbilling.kernel.contract.api.common.bean.*;

protected void onEvent( event, setup, con, conSlave )
{
   RSCM_TP=337;
   tu=new TimeUtils();
   cid = event.getContractId();
   ctdao= new ContractTariffDao(con);
   service=event.getContractService();
   date=service.getDate();
   Calendar cdate=tu.convertDateToCalendar(date);
   if (!ctdao.checkDoubleTariffForContract(cid,RSCM_TP,cdate,cdate))
   {
      ct=new ContractTariff();
      ct.setContractId(cid);
      ct.setTariffPlanId(RSCM_TP);
      ct.setDateFrom(date);
      ct.setDateTo(date);
      ct.setPosition(10);
      ct.setComment("Добавлен скриптом синхронизации");
      ctdao.updateImpl(ct);
   }
}

Работал он себе, работал. И вдруг начал сыпать ошибку
Код:
EXCEPTIONS:
Error in method invocation: Method updateImpl( ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff ) not found in class'ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao' : at Line: 30 : in file: Function [id:47; title:RSCM_sync] : ctdao .updateImpl ( ct )

java.util.concurrent.ExecutionException: Error in method invocation: Method updateImpl( ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff ) not found in class'ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao' : at Line: 30 : in file: Function [id:47; title:RSCM_sync] : ctdao .updateImpl ( ct )

   at java.util.concurrent.FutureTask.report(FutureTask.java:122)
   at java.util.concurrent.FutureTask.get(FutureTask.java:206)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.runScript(ScriptEventListener.java:466)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:310)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.notify(ScriptEventListener.java:277)
   at ru.bitel.bgbilling.kernel.event.AbstractConsumer.notify(AbstractConsumer.java:353)
   at ru.bitel.bgbilling.kernel.event.Consumer.notify(Consumer.java:19)
   at ru.bitel.bgbilling.kernel.event.Consumer.onMessage0(Consumer.java:112)
   at ru.bitel.bgbilling.kernel.event.Consumer$EventListenerRunnable.runImpl(Consumer.java:51)
   at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   at java.lang.Thread.run(Thread.java:745)
   at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
Caused by: Error in method invocation: Method updateImpl( ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff ) not found in class'ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao' : at Line: 30 : in file: Function [id:47; title:RSCM_sync] : ctdao .updateImpl ( ct )

   at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:77)
   at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
   at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
   at bsh.BSHBlock.evalBlock(BSHBlock.java:131)
   at bsh.BSHBlock.eval(BSHBlock.java:81)
   at bsh.BSHBlock.eval(BSHBlock.java:47)
   at bsh.BSHIfStatement.eval(BSHIfStatement.java:48)
   at bsh.BSHBlock.evalBlock(BSHBlock.java:131)
   at bsh.BSHBlock.eval(BSHBlock.java:81)
   at bsh.BshMethod.invokeImpl(BshMethod.java:362)
   at bsh.BshMethod.invoke(BshMethod.java:258)
   at bsh.BshMethod.invoke(BshMethod.java:186)
   at bsh.This.invokeMethod(This.java:255)
   at bsh.This.invokeMethod(This.java:174)
   at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.invoke(ScriptInstance.java:390)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$Invoker.runScriptImpl(ScriptEventListener.java:116)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:353)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.access$201(ScriptEventListener.java:404)
   at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1.call(ScriptEventListener.java:454)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   ... 4 more

Метод есть, скрипт работает на тестовом сервере как и прежде. На рабочем вдруг перестал. Я уже папку lib с тестового на рабочий сдул, не помогает. Сервера одинаковые, явы одинаковые. Кто может, подскажите что за мистика?

Автор:  barguzin2 [ 23 окт 2016, 21:33 ]
Заголовок сообщения:  Re: Непонятная ошибка скрипта

Код:
ctdao.update(ct);

вот так просто update надо, без Impl. а еще лучше использовать ContractTariffService, писать чистый java дин.код в IDE (он сразу показывает доступные методы. Eclipse, например, см.скрин) и уже забыть BSH как страшный сон, особенно на 7.0.

Вложения:
ctdao.png
ctdao.png [ 3.99 КБ | Просмотров: 2390 ]

Автор:  dmitry_P [ 24 окт 2016, 10:09 ]
Заголовок сообщения:  Re: Непонятная ошибка скрипта

Спасибо

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/