forum.bitel.ru http://forum.bitel.ru/ |
|
Ошибка в скрипте после обновления до 6.2 http://forum.bitel.ru/viewtopic.php?f=19&t=10838 |
Страница 1 из 2 |
Автор: | mazay-d [ 31 авг 2015, 13:04 ] |
Заголовок сообщения: | Ошибка в скрипте после обновления до 6.2 |
До версии 6.0 скрипт из wiki прекрасно работал "Вставка контрольной суммы в номер договора". http://wiki.bitel.ru/index.php/%D0%9E%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B4%D0%BE%D0%B3%D0%BE%D0%B2%D0%BE%D1%80%D0%B0 Код: import bitel.billing.server.util.*; title = event.getContract().getTitle(); pos = title.indexOf('-'); print( "title=" + title ); // имя вида 202-001072 if( pos == 3 ) { print( "inserting control digit" ); sum = 0; length = title.length(); for( i = 0; i < length; i++ ) { if( i == 4 ) { continue; } sum += Utils.parseIntString( title.substring( i, i + 1 ) ); } sum = sum % 10; title = title.substring( 0, 4) + sum + title.substring( 5 ); print( "title after =" + title ); query = "UPDATE contract SET title=? WHERE id=?"; psUpdate = con.prepareStatement( query ); psUpdate.setString( 1, title ); psUpdate.setInt( 2, event.getContractID() ); psUpdate.executeUpdate(); } После обновления до 6.2 стал выдавать ошибку: Код: EXCEPTIONS: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Генерация номера договора PPPOE] : at Line: 5 : in file: Function [id:1; title:Генерация номера договора PPPOE] : .getTitle ( ) Target exception: java.lang.NullPointerException: Attempt to invoke method getTitle on null value java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Генерация номера договора PPPOE] : at Line: 5 : in file: Function [id:1; title:Генерация номера договора PPPOE] : .getTitle ( ) Target exception: java.lang.NullPointerException: Attempt to invoke method getTitle on null value 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.LocalEventProcessor.request(LocalEventProcessor.java:240) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:893) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:862) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:119) at bitel.billing.server.Executer.doModule(SourceFile:600) at bitel.billing.server.Executer$1.run(SourceFile:199) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at bitel.billing.server.Executer.doPost(SourceFile:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:50) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Генерация номера договора PPPOE] : at Line: 5 : in file: Function [id:1; title:Генерация номера договора PPPOE] : .getTitle ( ) Target exception: java.lang.NullPointerException: Attempt to invoke method getTitle on null value at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1.call(ScriptEventListener.java:442) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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: Sourced file: Function [id:1; title:Генерация номера договора PPPOE] : at Line: 5 : in file: Function [id:1; title:Генерация номера договора PPPOE] : .getTitle ( ) Target exception: java.lang.NullPointerException: Attempt to invoke method getTitle on null value at bsh.UtilTargetError.toEvalError(UtilTargetError.java:70) at bsh.UtilEvalError.toEvalError(UtilEvalError.java:90) at bsh.Reflect.invokeObjectMethod(Reflect.java:85) at bsh.BSHPrimarySuffix.doName(BSHPrimarySuffix.java:176) at bsh.BSHPrimarySuffix.doSuffix(BSHPrimarySuffix.java:120) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:80) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) at bsh.BSHAssignment.eval(BSHAssignment.java:77) at bsh.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:327) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$Worker.runScriptImpl(ScriptEventListener.java:99) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:353) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.access$101(ScriptEventListener.java:404) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1$1.run(ScriptEventListener.java:448) ... 8 more Версия: Код: Информация о версии: Клиент: вер. 6.2.744 / 21.08.2015 21:13:07 os: Windows 10; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_60 Сервер: вер. 6.2.938 / 21.08.2015 21:14:00 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_60 assist: вер. 6.2.76 / 14.08.2015 18:02:26 bill: вер. 6.2.41 / 14.08.2015 18:00:59 card: вер. 6.2.25 / 14.08.2015 18:01:00 cerbercrypt: вер. 6.2.192 / 25.08.2015 19:00:58 dba: вер. 6.2.158 / 14.08.2015 18:01:44 dialup: вер. 6.2.309 / 14.08.2015 18:01:45 drweb: вер. 6.2.66 / 14.08.2015 18:01:46 email: вер. 6.2.171 / 14.08.2015 18:01:48 gorod: вер. 6.2.158 / 14.08.2015 18:01:50 inet: вер. 6.2.549 / 25.08.2015 19:02:55 ipn: вер. 6.2.221 / 14.08.2015 18:01:54 mps: вер. 6.2.168 / 14.08.2015 18:02:29 npay: вер. 6.2.180 / 14.08.2015 18:01:55 payonline: вер. 6.2.52 / 14.08.2015 18:02:31 phone: вер. 6.2.237 / 19.08.2015 21:37:11 rbkmoney: вер. 6.2.22 / 14.08.2015 18:02:35 reports: вер. 6.2.187 / 14.08.2015 18:02:08 rscm: вер. 6.2.170 / 14.08.2015 18:02:09 ru.bitel.bgbilling.plugins.cashcheck: вер. 6.2.98 / 14.08.2015 18:01:58 ru.bitel.bgbilling.plugins.cladr: вер. 6.2.116 / 14.08.2015 18:01:59 ru.bitel.bgbilling.plugins.crm: вер. 6.2.183 / 14.08.2015 18:02:02 ru.bitel.bgbilling.plugins.dispatch: вер. 6.2.49 / 14.08.2015 18:02:03 ru.bitel.bgbilling.plugins.documents: вер. 6.2.159 / 20.08.2015 13:00:45 ru.bitel.bgbilling.plugins.helpdesk: вер. 6.2.167 / 14.08.2015 18:02:05 ru.bitel.bgbilling.plugins.organizer: вер. 6.2.67 / 14.08.2015 18:02:06 trayinfo: вер. 6.2.165 / 14.08.2015 18:02:11 voiceip: вер. 6.2.176 / 17.08.2015 14:03:14 wm: вер. 6.2.172 / 14.08.2015 18:03:10 Окружение: Клиент: os: Windows 10 amd64, 10.0 java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_60 jre home: C:\Program Files\Java\jre1.8.0_60 default tz: 31.08.2015 10:04 MSK +0300 (Europe/Moscow) user tz: 31.08.2015 10:04 MSK +0300 (Europe/Moscow) locale: ru_RU Сервер: os: Linux amd64, 4.0.8-300.fc22.x86_64 java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_60 jre home: /opt/java/jdk1.8.0_60/jre default tz: 31.08.2015 10:04 MSK +0300 (Europe/Moscow) db time: 2015-08-31 10:04:48.0 locale: ru_RU Третьи стороны: Fugue Icons. Copyright © 2011 Yusuke Kamiyamane. All rights reserved. http://p.yusukekamiyamane.com/ Silk icon set. Copyright © Mark James. All rights reserved. http://www.famfamfam.com/lab/icons/silk/ Подскажите пожалуйста, что ему стало не нравиться и как исправить? |
Автор: | dimOn [ 31 авг 2015, 13:10 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Цитата: Attempt to invoke method getTitle on null value event.getContract() равен null |
Автор: | dimOn [ 31 авг 2015, 13:16 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
на событие какое у вас срабатывает этот скрипт |
Автор: | mazay-d [ 31 авг 2015, 13:19 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Ошибку я вижу, я просто в яве не силен и поэтому спрашиваю, почему раньше все ему нравилось, а после обновления нет и как исправить если это возможно? |
Автор: | mazay-d [ 31 авг 2015, 13:37 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
dimOn писал(а): на событие какое у вас срабатывает этот скрипт На событие Договор создан |
Автор: | Amir [ 31 авг 2015, 16:24 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Договор при этом создается? Но контрольная сумма не добавляется? |
Автор: | Amir [ 31 авг 2015, 16:27 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
У Вас скрипт точно так выглядит? В ошибке ругается на (1) Генерация номера договора PPPOE, строка 5, а в скрипте в первом посте строка 5 - пустая. |
Автор: | mazay-d [ 31 авг 2015, 17:01 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Amir писал(а): У Вас скрипт точно так выглядит? В ошибке ругается на (1) Генерация номера договора PPPOE, строка 5, а в скрипте в первом посте строка 5 - пустая. Скрипт такой: Код: import ru.bitel.common.*; //import bitel.billing.server.util.*; title = event.getContract().getTitle(); pos = title.indexOf('-'); print( "title=" + title ); // имя вида 202-001072 if( pos == 3 ) { print( "inserting control digit" ); sum = 0; length = title.length(); for( i = 0; i < length; i++ ) { if( i == 4 ) { continue; } sum += Utils.parseInt( title.substring( i, i + 1 ) ); } sum = sum % 10; title = title.substring( 0, 4) + sum + title.substring( 5 ); print( "title after =" + title ); query = "UPDATE contract SET title=? WHERE id=?"; psUpdate = con.prepareStatement( query ); psUpdate.setString( 1, title ); psUpdate.setInt( 2, event.getContractId() ); psUpdate.executeUpdate(); } В редакторе выглядит как на скрине. Договор создается, но контрольная сумма не верная. В шаблоне задано например: 215-${time:F}${N6} А получаем номер например: 215-5069588 Где: префикс на группу задан в шаблоне 215- следующий по порядку номер присваивается 069588 складываем все цифры: 2+1+5+0+6+9+5+8+8=44 отбрасываем десятки остается 4 должны получить номер договора 215-4069588, а получили 215-5069588. И где "казявка" я не пойму.... |
Автор: | Phricker [ 31 авг 2015, 17:27 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Код: 08-31/14:11:38 INFO [http-bio-0.0.0.0-8080-exec-6] ScriptEventListener - Process time => 11
08-31/14:11:38 ERROR [http-bio-0.0.0.0-8080-exec-6] ScriptEventListener - java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: java.lang.Exception: java.lang.NullPointerException 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.DynamicScriptEventListener$ThreadedScriptEventListener.runScriptImpl(DynamicScriptEventListener.java:267) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener.runScript(DynamicScriptEventListener.java:149) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener.notify(DynamicScriptEventListener.java:117) at ru.bitel.bgbilling.kernel.event.LocalEventProcessor.request(LocalEventProcessor.java:240) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:893) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:862) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:119) at bitel.billing.server.Executer.doModule(SourceFile:600) at bitel.billing.server.Executer$1.run(SourceFile:199) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at bitel.billing.server.Executer.doPost(SourceFile:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:50) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.security.PrivilegedActionException: java.lang.Exception: java.lang.NullPointerException at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener$ThreadedScriptEventListener$1.call(DynamicScriptEventListener.java:241) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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: java.lang.Exception: java.lang.NullPointerException at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener.runScriptImpl(DynamicScriptEventListener.java:200) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener$ThreadedScriptEventListener.access$001(DynamicScriptEventListener.java:204) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener$ThreadedScriptEventListener$1$1.run(DynamicScriptEventListener.java:247) ... 8 more Caused by: java.lang.NullPointerException at ru.ellcom.contract.ChangeContractTitle.onEvent(ChangeContractTitle.java:20) at ru.ellcom.contract.ChangeContractTitle.onEvent(ChangeContractTitle.java:14) at ru.bitel.bgbilling.kernel.script.server.DynamicScriptEventListener.runScriptImpl(DynamicScriptEventListener.java:196) ... 10 more |
Автор: | skyb [ 01 сен 2015, 08:11 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
может лучше на динкод переписать? |
Автор: | Phricker [ 01 сен 2015, 08:37 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Это из динкода как раз таки. И строка всего 1. Получение договора из эвента ))) |
Автор: | skyb [ 01 сен 2015, 10:08 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Phricker писал(а): Это из динкода как раз таки. И строка всего 1. Получение договора из эвента ))) да я не тебе а тс )))))), но понял что всеравно бессмысленно, хотя у меня на младших версиях работает Сервер: вер. 6.2.931 / 14.08.2015 18:01:24 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45 |
Автор: | Phricker [ 01 сен 2015, 13:12 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Ну тс сразу признался что в яве не силен. Потому и не переписал в динкод. А так по сути как я и говорил, не работает. Код: package ru.ellcom.contract; import bitel.billing.server.contract.bean.Contract; import org.apache.log4j.Logger; import ru.bitel.bgbilling.kernel.event.events.ContractCreatedEvent; import ru.bitel.bgbilling.kernel.script.server.dev.EventScriptBase; import ru.bitel.bgbilling.server.util.Setup; import ru.bitel.common.sql.ConnectionSet; import java.sql.Connection; public class ChangeContractTitle extends EventScriptBase<ContractCreatedEvent> { protected static final Logger logger = Logger.getLogger(ContractCreatedEvent.class); @Override public void onEvent(ContractCreatedEvent event, Setup setup, ConnectionSet connectionSet) throws Exception { Contract contract; contract = event.getContract(); if(contract == null){ logger.error("Чот фигня какая-то"); } else { logger.error("А нет не фигня"); } } } ![]() Код: [root@test62 log]# cat ./server.error.log
script 09-01/10:09:55 ERROR [dyn-clss-evnt-lstnr-p-4-t-1] ContractCreatedEvent - Чот фигня какая-то |
Автор: | dimOn [ 01 сен 2015, 15:02 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Задача непонятна. В ContractCreatedEvent не приходит Contract чтоле |
Автор: | skyb [ 02 сен 2015, 06:49 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
оказывается не только меня не понимают, может дело не во мне ![]() а вообще я ошибся, у меня другая схема работает Код: int cid = event.getContractId(); Contract c = cm.getContractById( cid ); Ну а дальше можно уже и Код: String title = c.getTitle();
|
Автор: | skyb [ 02 сен 2015, 06:52 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
ТС попробуй как то так Код: import bitel.billing.server.util.*; import bitel.billing.server.contract.bean.ContractManager; ContractManager cm = new ContractManager( con ); int cid = event.getContractId(); Contract c = cm.getContractById( cid ); String title = c.getTitle(); pos = title.indexOf('-'); print( "title=" + title ); // имя вида 202-001072 if( pos == 3 ) { print( "inserting control digit" ); sum = 0; length = title.length(); for( i = 0; i < length; i++ ) { if( i == 4 ) { continue; } sum += Utils.parseIntString( title.substring( i, i + 1 ) ); } sum = sum % 10; title = title.substring( 0, 4) + sum + title.substring( 5 ); print( "title after =" + title ); query = "UPDATE contract SET title=? WHERE id=?"; psUpdate = con.prepareStatement( query ); psUpdate.setString( 1, title ); psUpdate.setInt( 2, cid ); psUpdate.executeUpdate(); } или так Код: import bitel.billing.server.util.*;
import bitel.billing.server.contract.bean.ContractManager; ContractManager cm = new ContractManager( con ); int cid = event.getContractId(); Contract c = cm.getContractById( cid ); String title = c.getTitle(); pos = title.indexOf('-'); print( "title=" + title ); // имя вида 202-001072 if( pos == 3 ) { print( "inserting control digit" ); sum = 0; length = title.length(); for( i = 0; i < length; i++ ) { if( i == 4 ) { continue; } sum += Utils.parseIntString( title.substring( i, i + 1 ) ); } sum = sum % 10; title = title.substring( 0, 4) + sum + title.substring( 5 ); print( "title after =" + title ); c.setTitle(title); cm.updateContract( c ); } |
Автор: | Phricker [ 02 сен 2015, 12:21 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
skyb писал(а): оказывается не только меня не понимают, может дело не во мне ![]() В тебе в тебе. ContractCreatedEvent содержит метод getContract(), который возвращает договор. В 6.2 он его не возвращает. Либо надо переписать API и сказать что это не работает, либо исправить косяк. Код: package ru.bitel.bgbilling.kernel.event.events; ..... public class ContractCreatedEvent extends LocalEvent { ..... public Contract getContract() { return this.contract; } Но getContractId() все таки работает. Даже не посмотрел на это... ![]() |
Автор: | mazay-d [ 02 сен 2015, 12:59 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
skyb писал(а): ТС попробуй как то так Приходит на почту ошибка, это второй скрипт и контрольная сумма не та, она должна поменяться: Код: ID события: bgbs.contract.script.error
Время регистрации события: 02.09.2015 09:47:17 Хост сервера: bill.garantia.tv/127.0.0.1 Contract 215-1069604 GENERATE_TIME: 02.09.15 09:47:17 EXECUTION_STOP_TIME: 02.09.15 09:47:17 PROCESS_TIME: 12 OUT: EXCEPTIONS: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Typed variable declaration : Class: Contract not found in namespace : at Line: 6 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Contract java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Typed variable declaration : Class: Contract not found in namespace : at Line: 6 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Contract 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.LocalEventProcessor.request(LocalEventProcessor.java:240) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:893) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:862) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:119) at bitel.billing.server.Executer.doModule(SourceFile:600) at bitel.billing.server.Executer$1.run(SourceFile:199) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at bitel.billing.server.Executer.doPost(SourceFile:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:50) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Typed variable declaration : Class: Contract not found in namespace : at Line: 6 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Contract at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1.call(ScriptEventListener.java:442) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Typed variable declaration : Class: Contract not found in namespace : at Line: 6 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Contract at bsh.BSHAmbiguousName.toClass(BSHAmbiguousName.java:74) at bsh.BSHType.getType(BSHType.java:154) at bsh.BSHTypedVariableDeclaration.eval(BSHTypedVariableDeclaration.java:75) at bsh.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:327) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$Worker.runScriptImpl(ScriptEventListener.java:99) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:353) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.access$101(ScriptEventListener.java:404) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1$1.run(ScriptEventListener.java:448) ... 8 more |
Автор: | Phricker [ 02 сен 2015, 13:15 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
в импорт добавьте import bitel.billing.server.contract.bean.Contract; |
Автор: | mazay-d [ 02 сен 2015, 13:24 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Phricker писал(а): в импорт добавьте import bitel.billing.server.contract.bean.Contract; Ошибка и контрольная сумма не та: Код: ID события: bgbs.contract.script.error
Время регистрации события: 02.09.2015 10:22:07 Хост сервера: bill.garantia.tv/127.0.0.1 Contract 215-1069604 GENERATE_TIME: 02.09.15 10:22:07 EXECUTION_STOP_TIME: 02.09.15 10:22:07 PROCESS_TIME: 50 OUT: title=215-1069604 inserting control digit EXCEPTIONS: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseIntString() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseIntString ( title .substring ( i , i + 1 ) ) java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseIntString() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseIntString ( title .substring ( i , i + 1 ) ) 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.LocalEventProcessor.request(LocalEventProcessor.java:240) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:893) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:862) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:119) at bitel.billing.server.Executer.doModule(SourceFile:600) at bitel.billing.server.Executer$1.run(SourceFile:199) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at bitel.billing.server.Executer.doPost(SourceFile:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:50) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseIntString() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseIntString ( title .substring ( i , i + 1 ) ) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1.call(ScriptEventListener.java:442) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseIntString() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseIntString ( title .substring ( i , i + 1 ) ) at bsh.UtilEvalError.toEvalError(UtilEvalError.java:85) at bsh.UtilEvalError.toEvalError(UtilEvalError.java:90) at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:99) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) at bsh.BSHAssignment.eval(BSHAssignment.java:77) at bsh.BSHBlock.evalBlock(BSHBlock.java:131) at bsh.BSHBlock.eval(BSHBlock.java:81) at bsh.BSHBlock.eval(BSHBlock.java:47) at bsh.BSHForStatement.eval(BSHForStatement.java:111) 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.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:327) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$Worker.runScriptImpl(ScriptEventListener.java:99) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:353) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.access$101(ScriptEventListener.java:404) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1$1.run(ScriptEventListener.java:448) ... 8 more |
Автор: | Phricker [ 02 сен 2015, 13:26 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Покажите настройки шаблона договора. Я на тесте проверю. |
Автор: | Phricker [ 02 сен 2015, 13:27 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
В смысле как номер договора генерируется. |
Автор: | Phricker [ 02 сен 2015, 13:30 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Пока могу посоветовать заменить Код: sum += Utils.parseIntString( title.substring( i, i + 1 ) ); на Код: sum += Utils.parseInt( title.substring( i, i + 1 ) );
|
Автор: | mazay-d [ 02 сен 2015, 13:34 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Шаблон имени: Код: 215-${time:F}${N6} Функционал как Wiki: Код: Простейшая контрольная сумма для договоров вида 102-X{N6}, где {N6} - шестизначный порядковый номер, а X - собственно контрольная сумма, может быть вычислена как последний десятичный разряд суммы цифр за исключением контрольной суммы.
Для реализации вышеуказанной схемы в шаблоне договора прописывается шаблон имени 102-${time:F}${N6}. Вместо контрольной суммы вставляется некое число, равное в нашем случае первому дню в месяце создания или что-то вроде этого ) Что конкретно - не суть важно, главное чтобы это было одна цифра, не учавствующая в порядковом номере. Далее на событие Договор создан вешается скрипт, изменяющий номер. Префикс для каждого шаблона будет содержать три цифры. Под порядковый номер отводится последние шесть цифр. Четвертая цифра - контрольная сумма. Вычисляется путем сложения всех цифр номера договора, старший разряд отбрасывается. Пример: префикс на группу задан в шаблоне 202- следующий по порядку номер присваивается 001072 складываем все цифры: 2+0+2+0+0+1+0+7+2=14 отбрасываем десятки остается 4 получаем номер договора 202-4001072 |
Автор: | Phricker [ 02 сен 2015, 13:35 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Phricker писал(а): Пока могу посоветовать заменить Код: sum += Utils.parseIntString( title.substring( i, i + 1 ) ); на Код: sum += Utils.parseInt( title.substring( i, i + 1 ) ); Еще это проверьте. Если не заработает, перепишу в динкод и выложу. |
Автор: | mazay-d [ 02 сен 2015, 13:38 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Заменил, ошибка и контрол. сумма не та: Код: ID события: bgbs.contract.script.error
Время регистрации события: 02.09.2015 10:37:16 Хост сервера: bill.garantia.tv/127.0.0.1 Contract 215-1069605 GENERATE_TIME: 02.09.15 10:37:16 EXECUTION_STOP_TIME: 02.09.15 10:37:16 PROCESS_TIME: 19 OUT: title=215-1069605 inserting control digit EXCEPTIONS: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseInt() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseInt ( title .substring ( i , i + 1 ) ) java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseInt() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseInt ( title .substring ( i , i + 1 ) ) 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.LocalEventProcessor.request(LocalEventProcessor.java:240) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:893) at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:862) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:119) at bitel.billing.server.Executer.doModule(SourceFile:600) at bitel.billing.server.Executer$1.run(SourceFile:199) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at bitel.billing.server.Executer.doPost(SourceFile:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:50) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseInt() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseInt ( title .substring ( i , i + 1 ) ) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1.call(ScriptEventListener.java:442) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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: Sourced file: Function [id:50; title:Генерация номера договора PPPOE] : Attempt to resolve method: parseInt() on undefined variable or class name: Utils : at Line: 27 : in file: Function [id:50; title:Генерация номера договора PPPOE] : Utils .parseInt ( title .substring ( i , i + 1 ) ) at bsh.UtilEvalError.toEvalError(UtilEvalError.java:85) at bsh.UtilEvalError.toEvalError(UtilEvalError.java:90) at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:99) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) at bsh.BSHAssignment.eval(BSHAssignment.java:77) at bsh.BSHBlock.evalBlock(BSHBlock.java:131) at bsh.BSHBlock.eval(BSHBlock.java:81) at bsh.BSHBlock.eval(BSHBlock.java:47) at bsh.BSHForStatement.eval(BSHForStatement.java:111) 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.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:327) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$Worker.runScriptImpl(ScriptEventListener.java:99) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener.runScript(ScriptEventListener.java:353) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener.access$101(ScriptEventListener.java:404) at ru.bitel.bgbilling.kernel.script.server.ScriptEventListener$ThreadedScriptEventListener$1$1.run(ScriptEventListener.java:448) ... 8 more |
Автор: | Phricker [ 02 сен 2015, 14:17 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Код: import ru.bitel.common.Utils;
import bitel.billing.server.contract.bean.ContractManager; import bitel.billing.server.contract.bean.Contract; ContractManager cm = new ContractManager( con ); int cid = event.getContractId(); Contract c = cm.getContractById( cid ); String title = c.getTitle(); pos = title.indexOf('-'); if( pos == 3 ) { sum = 0; length = title.length(); for( i = 0; i < length; i++ ) { if( i == 4 ) { continue; } sum += Utils.parseInt( title.substring( i, i + 1 ) ); } sum = sum % 10; title = title.substring( 0, 4) + sum + title.substring( 5 ); c.setTitle(title); cm.updateContract( c ); } |
Автор: | mazay-d [ 02 сен 2015, 14:36 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Вот сейчас все заработало!!!! ОГРОМНОЕ СПАСИБО! ----------- Говорила мама учи яву, не слушался...... |
Автор: | skyb [ 02 сен 2015, 14:36 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
Phricker писал(а): skyb писал(а): оказывается не только меня не понимают, может дело не во мне ![]() В тебе в тебе. )))) ожидаемо ))) Phricker писал(а): ContractCreatedEvent содержит метод getContract(), который возвращает договор. В 6.2 он его не возвращает. Либо надо переписать API и сказать что это не работает, либо исправить косяк. Код: package ru.bitel.bgbilling.kernel.event.events; ..... public class ContractCreatedEvent extends LocalEvent { ..... public Contract getContract() { return this.contract; } Но getContractId() все таки работает. Даже не посмотрел на это... то что есть косяк я думаю разрабы поняли, а я лишь посоветовал быстрофикс =) опять я направил на то как исправить ошибку, опять плюс не мне, по головам идешь Phricker )))) |
Автор: | mazay-d [ 02 сен 2015, 14:46 ] |
Заголовок сообщения: | Re: Ошибка в скрипте после обновления до 6.2 |
skyb писал(а): Phricker писал(а): skyb писал(а): оказывается не только меня не понимают, может дело не во мне ![]() В тебе в тебе. )))) ожидаемо ))) Phricker писал(а): ContractCreatedEvent содержит метод getContract(), который возвращает договор. В 6.2 он его не возвращает. Либо надо переписать API и сказать что это не работает, либо исправить косяк. Код: package ru.bitel.bgbilling.kernel.event.events; ..... public class ContractCreatedEvent extends LocalEvent { ..... public Contract getContract() { return this.contract; } Но getContractId() все таки работает. Даже не посмотрел на это... то что есть косяк я думаю разрабы поняли, а я лишь посоветовал быстрофикс =) опять я направил на то как исправить ошибку, опять плюс не мне, по головам идешь Phricker )))) ВСЕМ ОГРОМНОЕ ПРЕОГРОМНОЕ СПАСИБО!!!! |
Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |