2015-07-22 4 views
0

Я загрузил wso2am-1.9.0.zip в свой MacBook и расширил его. Я не изменил ни одну конфигурацию или что-то еще. Я запустил его с bin/wso2server.sh, как описано. Казалось, он начал успешно. Я смог войти в API Publisher с помощью admin/admin, как описано. Когда я попытался добавить новый простой API (только одна конечная точка), я получил следующую трассировку стека:ArrayIndexOutOfBoundsException при добавлении нового API в wso2am

[2015-07-22 12:47:06,801] ERROR - add:jag org.mozilla.javascript.WrappedException: Wrapped java.lang.ArrayIndexOutOfBoundsException: 0 (/publisher/modules/api/add.jag#99) 
    at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1754) 
    at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:148) 
    at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386) 
    at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32) 
    at org.jaggeryjs.rhino.publisher.modules.api.c3._c_anonymous_5(/publisher/modules/api/add.jag:99) 
    at org.jaggeryjs.rhino.publisher.modules.api.c3.call(/publisher/modules/api/add.jag) 
    at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2430) 
    at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:269) 
    at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:97) 
    at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42) 
    at org.jaggeryjs.rhino.publisher.modules.api.c0._c_anonymous_30(/publisher/modules/api/module.jag:98) 
    at org.jaggeryjs.rhino.publisher.modules.api.c0.call(/publisher/modules/api/module.jag) 
    at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_anonymous_1(/publisher/site/blocks/item-design/ajax/add.jag:100) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag) 
    at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_script_0(/publisher/site/blocks/item-design/ajax/add.jag:5) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag) 
    at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394) 
    at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag) 
    at org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.exec(/publisher/site/blocks/item-design/ajax/add.jag) 
    at org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(RhinoEngine.java:567) 
    at org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(RhinoEngine.java:273) 
    at org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:541) 
    at org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(JaggeryServlet.java:29) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748) 
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486) 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:378) 
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338) 
    at org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(JaggeryFilter.java:21) 
    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:501) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178) 
    at org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) 
    at org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56) 
    at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) 
    at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141) 
    at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) 
    at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1736) 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1695) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    at java.lang.Thread.run(Thread.java:744) 
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0 
    at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.addAPI(ApiMgtDAO.java:6379) 
    at org.wso2.carbon.apimgt.impl.APIProviderImpl.addAPI(APIProviderImpl.java:395) 
    at org.wso2.carbon.apimgt.impl.UserAwareAPIProvider.addAPI(UserAwareAPIProvider.java:46) 
    at org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.saveAPI(APIProviderHostObject.java:900) 
    at org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.jsFunction_createAPI(APIProviderHostObject.java:798) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126) 
    ... 58 more 
+0

что это значение контекста вы использовали? аналогичная проблема приведена в этом jira https://wso2.org/jira/browse/APIMANAGER-3977. – lakshman

+0

Каков был контекст, который вы указали при создании api? – Ushani

+0

@ Ушани я использовал/{версия} – sschwell

ответ

1

Эта проблема возникает, когда вы даете контекст как/{версия}. Эта проблема [1] уже идентифицирована и находится в открытом состоянии и будет исправлена ​​в будущих выпусках. Как работа вокруг, вы можете предоставить некоторую другую ценность и вашему контексту и создать api. Например, тест/{версия} или/{версия}/тест или тест/{версия}/SomeString

[1] https://wso2.org/jira/browse/APIMANAGER-3977

Смежные вопросы