forum.bitel.ru http://forum.bitel.ru/ |
|
[BUG] Редактирование глобального скрипта http://forum.bitel.ru/viewtopic.php?f=22&t=5637 |
Страница 1 из 1 |
Автор: | Cromeshnic [ 24 июн 2011, 07:09 ] |
Заголовок сообщения: | [BUG] Редактирование глобального скрипта |
Писал глобальный скрипт, сохранил, закрыл вкладку с глобальными скриптами. Сегодня открываю - скрипт не открывается. Остальные открываются нормально. Клиент ругается: "Ошибка соединения с сервером". Версия: Код: Клиент: вер. 5.1 сборка 552 от 21.06.2011 13:29:36 os:Windows XP; java:Sun Microsystems Inc., v.1.6.0_16 Сервер: вер. 5.1 сборка 673 от 21.06.2011 13:29:08 os:Linux; java:Sun Microsystems Inc., v.1.6.0_22 В дебаге клиента: Код: http://192.168.0.101:8080/bgbilling/executer?id=35&module=script.global&action=GetGlobalScript&BGBillingSecret=lqwAHClXFosZPUKBAFZqVw09& [ length = 0 ] xml = [Fatal Error] :-1:-1: Premature end of file. В server.error.log ошибка: Код: server 06-24/09:50:15 ERROR [http-8080-7] server - Exception in Executer (ActionGetGlobalScript) java.io.IOException: The character ' is an invalid XML character at org.apache.xml.serialize.BaseMarkupSerializer.fatalError(Unknown Source) at org.apache.xml.serialize.BaseMarkupSerializer.surrogates(Unknown Source) at org.apache.xml.serialize.XMLSerializer.printEscaped(Unknown Source) at org.apache.xml.serialize.XMLSerializer.printAttribute(Unknown Source) at org.apache.xml.serialize.XMLSerializer.serializeElement(Unknown Source) at org.apache.xml.serialize.BaseMarkupSerializer.serializeNode(Unknown Source) at org.apache.xml.serialize.XMLSerializer.serializeElement(Unknown Source) at org.apache.xml.serialize.BaseMarkupSerializer.serializeNode(Unknown Source) at org.apache.xml.serialize.BaseMarkupSerializer.serialize(Unknown Source) at bitel.billing.server.Executer.A(Unknown Source) at bitel.billing.server.Executer.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at bitel.billing.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:49) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:662) Текст скрипта (взял из базы): Код: import java.io.IOException; import org.apache.log4j.*; import java.util.HashMap; import java.util.Map; import java.util.TreeMap; import java.net.InetAddress; /* import org.snmp4j.CommunityTarget; import org.snmp4j.event.ResponseEvent; import org.snmp4j.mp.SnmpConstants; import org.snmp4j.PDU; import org.snmp4j.smi.Address; import org.snmp4j.smi.Integ ППр8@ђ[‰ org.snmp4j.smi.Null; import org.snmp4j.smi.OctetString; import org.snmp4j.smi.OID; import org.snmp4j.smi.UdpAddress; import org.snmp4j.smi.VariableBinding; import org.snmp4j.Snmp; import org.snmp4j.transport.DefaultUdpTransportMapping; import org.snmp4j.TransportMapping; */ import ru.dsi.bgbilling.common.snmp.SNMPInterfaceManager; import ru.dsi.bgbilling.common.snmp.SNMPInterfaceManager.IfaceData; import ru.bitel.bgbilling.modules.ipn.common.bean.*; import java.sql.*; import bitel.billing.server.dialup.bean.*; import bitel.billing.server.call.bean.*; import java.util.*; import bitel.billing.common.TimeUtils; import bitel.billing.server.contract.bean.ContractServiceManager; import bitel.billing.server.contract.bean.ContractService; import bitel.billing.server.service.bean.ModuleAndServiceManager; import bitel.billing.server.dialup.bean.DialUpLoginManager; public void main(setup, con, conSlave ) { /* includeBGBS("bgbs://ru.bitel.bgbilling.kernel.script.common.bean.ScriptLibrary/some_utils"); SomeUtils.sync(172426, con); */ SNMPInterfaceManager snmp = new SNMPInterfaceManager(); bitel.billing.server.load.bean.SourceManager sm = new bitel.billing.server.load.bean.SourceManager(con); AddressRangeManager arm = new AddressRangeManager(con, 9); bitel.billing.server.ipn.bean.RangeIfaceManager rangeifman = new bitel.billing.server.ipn.bean.RangeIfaceManager(con, 9); bitel.billing.server.ipn.bean.IfaceManager ifman = new bitel.billing.server.ipn.bean.IfaceManager(con, 9); List ranges = arm.getAddressRangeList(java.util.Calendar.getInstance()); int i=100; for(AddressRange range : ranges){ if(range.getAddr1()<=1){continue;} int plan = range.getPlanId(); if(plan==0 || plan==1 || plan==6 || plan==122 || plan==237){ Set rangeifaces = rangeifman.getAdressRangeIfaces(range.getID()); for(bitel.billing.server.ipn.bean.RangeIface rangeiface : rangeifaces){ bitel.billing.server.ipn.bean.Iface iface = ifman.getIface(rangeiface.getSourceId(), rangeiface.getIfaceId()); bitel.billing.server.load.bean.Source source = sm.getSource(rangeiface.getSourceId()); try{ IfaceData ifData = snmp.getIfDataByIpForNas(InetAddress.getByName(source.getHostOrDir()), InetAddress.getByName(bitel.billing.common.IPUtils.convertLongIpToString(range.getAddr1())), 161, "public"); if(ifData!=null){ print(range.getContractID()+":"+range.toString()+":\t\t\t ifName="+ifData.ifName+"\t\t\t(bg: "+iface.getNumber()+")"); }else{ print(range.getContractID()+":"+range.toString()+": null"); } }catch(e){ print(range.getContractID()+":"+range+" : "+e); } } i--; if(i<=0){return;} } } /* SNMPInterfaceManager sm = new SNMPInterfaceManager(); IfaceData ifData = sm.getIfDataByIpForNas(InetAddress.getByName("10.0.0.40"), InetAddress.getByName("192.168.1.101"), 161, "public"); print(ifData.ifIndex); print(ifData.ifName); print(ifData.maskLength);*/ } (пароли и ip изменены, все совпадения считать случайными ![]() (предваряя вопросы - тестовый скрипт, тестирую получение имён интерфейсов по ip через SNMP) |
Автор: | Cromeshnic [ 24 июн 2011, 07:45 ] |
Заголовок сообщения: | Re: [BUG] Редактирование глобального скрипта |
Ухты! Код: import org.snmp4j.smi.Integ ППр8@ђ[‰ org.snmp4j.smi.Null; !! Не заметил, странно. Откуда взялось - неясно, поправил - заработало. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |