Welcome to the Lobeo Module Server project. Please feel free to submit bugs related to it.
FS#700 - [Core] An error occurs when deploying a module containing a script and a path having parenthesis
Attached to Project:
LMS
Opened by Ferdinand (PaGaisu) - Wednesday, 30 October 2013, 15:42 GMT
Last edited by Ferdinand (PaGaisu) - Monday, 04 November 2013, 09:10 GMT
Opened by Ferdinand (PaGaisu) - Wednesday, 30 October 2013, 15:42 GMT
Last edited by Ferdinand (PaGaisu) - Monday, 04 November 2013, 09:10 GMT
|
DetailsAn error occurs when deploying a module containing a script and a path having parenthesis
Stack: java.io.IOException: The module package NewGallery_204.module.zip failed to deploy at com.lobeo.lms.core.service.impl.ModuleCoreServiceImpl.processTemplate(ModuleCoreServiceImpl.java:742) at com.lobeo.lms.script.MasterRegistrar.doInstanciation(MasterRegistrar.java:440) at com.lobeo.lms.script.ScriptManager.getRegisteredScript(ScriptManager.java:389) at com.lobeo.lms.lobby.ScriptSocketClient.handleScriptConnect(ScriptSocketClient.java:364) at com.lobeo.lms.lobby.ScriptSocketClient.messageReceived(ScriptSocketClient.java:186) at com.lobeo.lms.server.http.sock.SockMessageInbound.onTextMessage(SockMessageInbound.java:79) at org.apache.catalina.websocket.MessageInbound.onTextData(MessageInbound.java:74) at org.apache.catalina.websocket.StreamInbound.doOnTextData(StreamInbound.java:186) at org.apache.catalina.websocket.StreamInbound.onData(StreamInbound.java:134) at org.apache.coyote.http11.upgrade.UpgradeProcessor.upgradeDispatch(UpgradeProcessor.java:83) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:587) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1680) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) Caused by: java.io.IOException: An error occurred when starting the module NewGallery_204 at com.lobeo.lms.module.ModuleRepository.startModule(ModuleRepository.java:417) at com.lobeo.lms.module.ModuleRepository.deployPackage(ModuleRepository.java:579) at com.lobeo.lms.core.service.impl.RepositoryCoreServiceImpl.installModule(RepositoryCoreServiceImpl.java:128) at com.lobeo.lms.core.service.impl.ModuleCoreServiceImpl.processTemplate(ModuleCoreServiceImpl.java:740) ... 14 more Caused by: org.osgi.framework.BundleException: Exception in com.lobeo.lms.script.container.ScriptContainerActivator.start() of bundle com.lobeo.lms.script.ScriptContainer_file__C__Program%20Files%20(x86)_Lobeo_SuperG_bin_.._repo-modules_NewGallery_204_NewGallery.js.jar. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:291) at com.lobeo.lms.script.deployer.ScriptProcessor.processItemStartup(ScriptProcessor.java:395) at com.lobeo.lms.module.deployer.DeployerImpl.startItem(DeployerImpl.java:244) at com.lobeo.lms.module.ModuleRepository.startModule(ModuleRepository.java:380) ... 17 more Caused by: java.lang.IllegalArgumentException: Unable to create a filter at com.lobeo.lms.core.event.EventHandlerWrapper.<init>(EventHandlerWrapper.java:89) at com.lobeo.lms.core.event.EventAdminImpl.registerEventHandler(EventAdminImpl.java:170) at com.lobeo.lms.core.ContextImpl.registerEventHandler(ContextImpl.java:346) at com.lobeo.lms.script.container.ScriptContainerActivator.load(ScriptContainerActivator.java:158) at com.lobeo.lms.framework.Activator.start(Activator.java:50) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) ... 24 more Caused by: org.osgi.framework.InvalidSyntaxException: Invalid value: (x86)/Lobeo/SuperG/bin/../repo-modules/NewGallery_204/NewGallery.js) at org.osgi.framework.FrameworkUtil$FilterImpl$Parser.parse_substring(FrameworkUtil.java:1581) at org.osgi.framework.FrameworkUtil$FilterImpl$Parser.parse_item(FrameworkUtil.java:1481) at org.osgi.framework.FrameworkUtil$FilterImpl$Parser.parse_filtercomp(FrameworkUtil.java:1381) at org.osgi.framework.FrameworkUtil$FilterImpl$Parser.parse_filter(FrameworkUtil.java:1346) at org.osgi.framework.FrameworkUtil$FilterImpl$Parser.parse(FrameworkUtil.java:1320) at org.osgi.framework.FrameworkUtil$FilterImpl.newInstance(FrameworkUtil.java:382) at org.osgi.framework.FrameworkUtil.createFilter(FrameworkUtil.java:79) at com.lobeo.lms.core.event.EventHandlerWrapper.<init>(EventHandlerWrapper.java:87) ... 31 more |
This task depends upon
Closed by Ferdinand (PaGaisu)
Monday, 04 November 2013, 09:10 GMT
Reason for closing: Fixed
Additional comments about closing: Rev 3021 & 3022
Monday, 04 November 2013, 09:10 GMT
Reason for closing: Fixed
Additional comments about closing: Rev 3021 & 3022
after investigation, i noticed the equinox has an issue on backslash, so the solution to escape the characters was as followed:
public static final String escapeSearchFilter(String filterValue) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < filterValue.length(); i++) {
char curChar = filterValue.charAt(i);
switch (curChar) {
case '\\':
sb.append("/5c");
break;
case '*':
sb.append("/2a");
break;
case '(':
sb.append("/28");
break;
case ')':
sb.append("/29");
break;
case '&':
sb.append("/26");
break;
case '=':
sb.append("/3d");
break;
case '>':
sb.append("/3e");
break;
case '<':
sb.append("/3c");
break;
case '|':
sb.append("/7c");
break;
case '~':
sb.append("/7e");
break;
case '/':
sb.append("/2f");
break;
case '\u0000':
sb.append("/00");
break;
default:
sb.append(curChar);
}
}
return sb.toString();
}