Собственно сегодня сделал дамп базы с 6.0 рабочей, обновил ее до 6.1
Код:
Информация о версии:
Клиент: вер. 6.1.747 / 07.07.2014 13:56:47
os: Windows 8; java: Java HotSpot(TM) Client VM, v.1.7.0_25
Сервер: вер. 6.1.915 / 07.07.2014 13:56:59
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_60
bill: вер. 6.1.248 / 26.06.2014 12:59:21
card: вер. 6.1.198 / 18.06.2014 14:18:25
dba: вер. 6.1.161 / 18.06.2014 14:18:37
dialup: вер. 6.1.310 / 07.07.2014 13:57:34
inet: вер. 6.1.550 / 01.07.2014 12:06:41
ipn: вер. 6.1.226 / 18.06.2014 14:18:38
mps: вер. 6.1.171 / 26.06.2014 13:00:08
npay: вер. 6.1.174 / 03.07.2014 20:02:54
phone: вер. 6.1.237 / 07.07.2014 13:57:39
reports: вер. 6.1.181 / 07.07.2014 13:57:40
ru.bitel.bgbilling.plugins.bonus: вер. 6.1.108 / 29.05.2014 18:02:22
ru.bitel.bgbilling.plugins.cashcheck: вер. 6.1.95 / 17.03.2014 15:29:55
ru.bitel.bgbilling.plugins.cladr: вер. 6.1.114 / 02.04.2014 17:58:45
ru.bitel.bgbilling.plugins.crm: вер. 6.1.184 / 02.04.2014 17:58:46
ru.bitel.bgbilling.plugins.dispatch: вер. 6.1.50 / 09.06.2014 19:51:10
ru.bitel.bgbilling.plugins.documents: вер. 6.1.138 / 02.06.2014 20:01:21
ru.bitel.bgbilling.plugins.helpdesk: вер. 6.1.182 / 03.07.2014 20:02:55
ru.bitel.bgbilling.plugins.organizer: вер. 6.1.65 / 17.03.2014 15:30:02
trayinfo: вер. 6.1.161 / 17.03.2014 15:30:33
tv: вер. 6.1.180 / 23.06.2014 15:23:42
voiceip: вер. 6.1.179 / 07.07.2014 13:57:50
1) Можно вернуть сортировку в фильтре по группам договоров в окне поиска договоров?
Раньше была сортировка по алфавиту, теперь по ID групп.
Было удобно, я служебные, часто используемые группы, выносил вверх просто заводя через цифру или англ. название.
2) При попытке войти в модуль MPS, не показывается вкладка "Менеджер платежей"
server.error.log пуст.
Клиент в дебаге выдает
Код:
java.lang.TypeNotPresentException: Type ru.bitel.bgbilling.modules.mps.server.bean.MPSPayment not present
at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(Unknown Source)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Unknown Source)
at sun.reflect.generics.tree.ClassTypeSignature.accept(Unknown Source)
at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Unknown Source)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Unknown Source)
at sun.reflect.generics.tree.ClassTypeSignature.accept(Unknown Source)
at sun.reflect.generics.repository.ClassRepository.getSuperclass(Unknown Source)
at java.lang.Class.getGenericSuperclass(Unknown Source)
at ru.bitel.common.client.table.BasicBGTableModel.<init>(BasicBGTableModel.java:123)
at ru.bitel.common.client.table.BGTableModel.<init>(BGTableModel.java:70)
at ru.bitel.common.client.table.BGTableModel.<init>(BGTableModel.java:60)
at ru.bitel.bgbilling.modules.mps.client.ServiceConfigManagerPayments$MPSPaymentsTableModel.<init>(ServiceConfigManagerPayments.java:300)
at ru.bitel.bgbilling.modules.mps.client.ServiceConfigManagerPayments.<init>(ServiceConfigManagerPayments.java:64)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at bitel.billing.module.services.ServiceConfig$ServiceConfigPane$1.doInBackgroundImpl(ServiceConfig.java:62)
at bitel.billing.module.services.ServiceConfig$ServiceConfigPane$1.doInBackgroundImpl(ServiceConfig.java:1)
at ru.bitel.bgbilling.client.common.BGSwingWorker.doInBackground(BGSwingWorker.java:27)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: ru.bitel.bgbilling.modules.mps.server.bean.MPSPayment
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
... 28 more
http://10.0.6.152:8080/bgbilling/executer?table_module=mps&module=admin&action=BGTable&table=revise_payments&BGBillingSecret=xlECixTlwjm2yP6DO2AyeLp3&
[ length = 99 ] xml = <?xml version="1.0" encoding="UTF-8"?><data secret="332DB1EEB495D2304194B892306D9D08" status="ok"/>
java.lang.NullPointerException
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at bitel.billing.module.services.ServiceConfig$ServiceConfigPane.setPanel(ServiceConfig.java:106)
at bitel.billing.module.services.ServiceConfig$ServiceConfigPane.access$0(ServiceConfig.java:103)
at bitel.billing.module.services.ServiceConfig$ServiceConfigPane$1.doneImpl(ServiceConfig.java:82)
at ru.bitel.bgbilling.client.common.BGSwingWorker.done(BGSwingWorker.java:41)
at javax.swing.SwingWorker$5.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at sun.swing.AccumulativeRunnable.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
at sun.reflect.annotation.AnnotationParser.parseClassArray(Unknown Source)
at sun.reflect.annotation.AnnotationParser.parseArray(Unknown Source)
at sun.reflect.annotation.AnnotationParser.parseMemberValue(Unknown Source)
at sun.reflect.annotation.AnnotationParser.parseAnnotation(Unknown Source)
at sun.reflect.annotation.AnnotationParser.parseAnnotations2(Unknown Source)
at sun.reflect.annotation.AnnotationParser.parseAnnotations(Unknown Source)
at java.lang.Class.initAnnotationsIfNecessary(Unknown Source)
at java.lang.Class.getAnnotation(Unknown Source)
at com.sun.xml.bind.v2.model.annotation.RuntimeInlineAnnotationReader.getClassAnnotation(RuntimeInlineAnnotationReader.java:106)
at com.sun.xml.bind.v2.model.annotation.RuntimeInlineAnnotationReader.getClassAnnotation(RuntimeInlineAnnotationReader.java:57)
at com.sun.xml.bind.v2.model.impl.PropertyInfoImpl.getApplicableAdapter(PropertyInfoImpl.java:246)
at com.sun.xml.bind.v2.model.impl.PropertyInfoImpl.<init>(PropertyInfoImpl.java:127)
at com.sun.xml.bind.v2.model.impl.ERPropertyInfoImpl.<init>(ERPropertyInfoImpl.java:57)
at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl.<init>(ElementPropertyInfoImpl.java:100)
at com.sun.xml.bind.v2.model.impl.RuntimeElementPropertyInfoImpl.<init>(RuntimeElementPropertyInfoImpl.java:63)
at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.createElementProperty(RuntimeClassInfoImpl.java:175)
at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.addProperty(ClassInfoImpl.java:879)
at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:409)
at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:312)
at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:186)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:247)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:104)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:213)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:99)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:319)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:334)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:483)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:319)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1170)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:188)
at com.sun.xml.bind.api.JAXBRIContext.newInstance(JAXBRIContext.java:111)
at com.sun.xml.ws.developer.JAXBContextFactory$1.createJAXBContext(JAXBContextFactory.java:113)
at com.sun.xml.ws.model.AbstractSEIModelImpl$1.run(AbstractSEIModelImpl.java:166)
at com.sun.xml.ws.model.AbstractSEIModelImpl$1.run(AbstractSEIModelImpl.java:159)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:158)
at com.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:99)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:250)
at com.sun.xml.ws.client.WSServiceDelegate.createSEIPortInfo(WSServiceDelegate.java:667)
at com.sun.xml.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:655)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:347)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:330)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:368)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:372)
at javax.xml.ws.Service.getPort(Unknown Source)
at ru.bitel.bgbilling.kernel.container.ws.common.WSClient.getPort(WSClient.java:261)
at ru.bitel.bgbilling.client.common.ClientContext.getPort(ClientContext.java:411)
at ru.bitel.bgbilling.modules.mps.client.ServiceConfigManagerRevise.setData(ServiceConfigManagerRevise.java:323)
at bitel.billing.module.services.ServiceConfig.setData(ServiceConfig.java:257)
at bitel.billing.module.services.ServiceConfig.jTabbedPane_stateChanged(ServiceConfig.java:324)
at bitel.billing.module.services.ServiceConfig.access$1(ServiceConfig.java:317)
at bitel.billing.module.services.ServiceConfig$1.stateChanged(ServiceConfig.java:163)
at javax.swing.JTabbedPane.fireStateChanged(Unknown Source)
at javax.swing.JTabbedPane$ModelListener.stateChanged(Unknown Source)
at javax.swing.DefaultSingleSelectionModel.fireStateChanged(Unknown Source)
at javax.swing.DefaultSingleSelectionModel.setSelectedIndex(Unknown Source)
at javax.swing.JTabbedPane.setSelectedIndexImpl(Unknown Source)
at javax.swing.JTabbedPane.setSelectedIndex(Unknown Source)
at javax.swing.plaf.basic.BasicTabbedPaneUI$Handler.mousePressed(Unknown Source)
at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
3) В 6.0 если на группе платежей (Справочники - Другие - Типы платежей), не стояла галочка "Не редактируемый элемент", но в данной группе не было ни одного редактируемого платежа - она не показывалась в окне выбора при занесении платежа.
Сейчас же она показывается в окне выбора.

Если же на группе убрать галочку "Редактируемый элемент" (в 6.1 ее переименовали), то тогда все платежи которые есть в этой группе так же пропадут для выбора. Как пример.

Теперь надо убирать галочку с группы если в ней нет редактируемых платежей, и наоборот возвращать ее, если платеж появился.
Может вернуть, что если группа пустая - она просто не показывается?
В остальном на первый взгляд все в порядке, пойду отчеты и скрипты ковырять.