Hi ES team,
We all are aware that assets cannot be created without an *Asset Name*
and *Version
*since they are mandatory in the perspective of adding an asset. But in
user perspective since the RXT is customizable they can remove the "*Required
=True*" for those "* Name*" and "*Version*" fields and with that RXT
configuration if they try to add an asset without those fields, backend
Error is thrown which is noted in [1].
If we make those fields *Not Required* from RXT, these will be reflected
in Asset creation UI as *Not Required *fields which is misleading to the
end users as they are actually Not required fields but when actually adding
the asset, backend error is thrown since they should be saved
in storagePath.
Can we have a feasible solution for this please? The following are few
suggestions from QA.
1. Though the "Required=true" is removed for Name and Version from RXT
definition, we can show it as mandatory in asset creation UI and when they
are values for those fields are not entered give a feasible UI error message
2. We can validate the RXT whether those fields are always "Required =
True" and without those fields "Required = True" the RXT cannot be saved
.
In QA's point of view this is an issue that should be given attention to.
The jira added for this is noted in [2]. But ths jira was added only
considering version field.
Any feedback on this is highly appreciated!
[1] - [2015-06-12 14:33:54,310] ERROR
{org.wso2.carbon.governance.api.util.GovernanceUtils}
- Value for required attribute overview_version found empty.
[2015-06-12 14:33:54,315] ERROR
{org.wso2.carbon.governance.api.common.GovernanceArtifactManager}
- Failed to add artifact: artifact id:
176cd77f-3604-42b5-976e-2b2bd09c57eb. Value for required attribute
overview_version found empty.
org.wso2.carbon.governance.api.exception.GovernanceException: Value for
required attribute overview_version found empty.
at
org.wso2.carbon.governance.api.util.GovernanceUtils.getPathFromPathExpression(GovernanceUtils.java:1303)
at
org.wso2.carbon.governance.api.common.GovernanceArtifactManager.addGovernanceArtifact(GovernanceArtifactManager.java:185)
at
org.wso2.carbon.governance.api.generic.GenericArtifactManager.addGenericArtifact(GenericArtifactManager.java:215)
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)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
at
org.jaggeryjs.rhino.<carbon>.\scripts\registry.c0._c_anonymous_20(<carbon>\scripts\registry\artifacts.js:299)
at
org.jaggeryjs.rhino.<carbon>.\scripts\registry.c0.call(<carbon>\scripts\registry\artifacts.js)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
at
org.jaggeryjs.rhino.<rxt>.\scripts\asset.c0._c_anonymous_11(<rxt>\scripts\asset\asset.js:202)
at
org.jaggeryjs.rhino.<rxt>.\scripts\asset.c0.call(<rxt>\scripts\asset\asset.js)
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.Interpreter.interpretLoop(Interpreter.java:1473)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815)
at
org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
at
org.jaggeryjs.rhino.publisher.modules.c4._c_anonymous_13(/publisher/modules/asset-api.js:234)
at
org.jaggeryjs.rhino.publisher.modules.c4.call(/publisher/modules/asset-api.js)
at org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:52)
at
org.jaggeryjs.rhino.publisher.extensions.assets.default.apis.c0._c_anonymous_1(/publisher/extensions/assets/default/apis/assets.jag:71)
at
org.jaggeryjs.rhino.publisher.extensions.assets.default.apis.c0.call(/publisher/extensions/assets/default/apis/assets.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.c1._c_anonymous_19(/publisher/modules/publisher.js:395)
at
org.jaggeryjs.rhino.publisher.modules.c1.call(/publisher/modules/publisher.js)
at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
at
org.jaggeryjs.rhino.<store>.\scripts.c0._c_anonymous_18(<store>\scripts\server.js:318)
at org.jaggeryjs.rhino.<store>.\scripts.c0.call(<store>\scripts\server.js)
at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
at
org.jaggeryjs.rhino.publisher.modules.c1._c_anonymous_18(/publisher/modules/publisher.js:390)
at
org.jaggeryjs.rhino.publisher.modules.c1.call(/publisher/modules/publisher.js)
at org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:52)
at
org.jaggeryjs.rhino.publisher.extensions.assets.default.apis.c0._c_script_0(/publisher/extensions/assets/default/apis/assets.jag:39)
at
org.jaggeryjs.rhino.publisher.extensions.assets.default.apis.c0.call(/publisher/extensions/assets/default/apis/assets.jag)
at
org.jaggeryjs.rhino.publisher.extensions.assets.default.apis.c0.exec(/publisher/extensions/assets/default/apis/assets.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.executeScript(WebAppManager.java:308)
at
org.jaggeryjs.jaggery.core.manager.WebAppManager.include(WebAppManager.java:148)
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)
at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386)
at org.mozilla.javascript.optimizer.OptRuntime.callName(OptRuntime.java:63)
at
org.jaggeryjs.rhino.publisher.extensions.app.publisher_apis.apis.c0._c_anonymous_4(/publisher/extensions/app/publisher-apis/apis/assets.jag:67)
at
org.jaggeryjs.rhino.publisher.extensions.app.publisher_apis.apis.c0.call(/publisher/extensions/app/publisher-apis/apis/assets.jag)
at org.mozilla.javascript.optimizer.OptRuntime.callName(OptRuntime.java:63)
at
org.jaggeryjs.rhino.publisher.extensions.app.publisher_apis.apis.c0._c_script_0(/publisher/extensions/app/publisher-apis/apis/assets.jag:87)
at
org.jaggeryjs.rhino.publisher.extensions.app.publisher_apis.apis.c0.call(/publisher/extensions/app/publisher-apis/apis/assets.jag)
at
org.jaggeryjs.rhino.publisher.extensions.app.publisher_apis.apis.c0.exec(/publisher/extensions/app/publisher-apis/apis/assets.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.executeScript(WebAppManager.java:308)
at
org.jaggeryjs.jaggery.core.manager.WebAppManager.include(WebAppManager.java:148)
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)
at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386)
at org.mozilla.javascript.optimizer.OptRuntime.callName(OptRuntime.java:63)
at
org.jaggeryjs.rhino.publisher.controllers.c3._c_script_0(/publisher/controllers/apis-router.jag:61)
at
org.jaggeryjs.rhino.publisher.controllers.c3.call(/publisher/controllers/apis-router.jag)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
at
org.jaggeryjs.rhino.publisher.controllers.c3.call(/publisher/controllers/apis-router.jag)
at
org.jaggeryjs.rhino.publisher.controllers.c3.exec(/publisher/controllers/apis-router.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.exec(WebAppManager.java:587)
at
org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:507)
at org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(JaggeryServlet.java:29)
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
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.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
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.core.StandardHostValve.invoke(StandardHostValve.java:170)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at
org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
at
org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
at
org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57)
at
org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
at
org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
at
org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at
org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
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.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
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:745)
[2015-06-12 14:33:54,322] ERROR
{asset_api}
- Asset of type: servicex was not created due to JavaException:
org.wso2.carbon.governance.api.exception.GovernanceException: Failed to add
artifact: artifact id: 176cd77f-3604-42b5-976e-2b2bd09c57eb. Value for
required attribute overview_version found empty.
[2] -https://wso2.org/jira/browse/STORE-777
Regards,
Nadeesha
--
*Nadeesha Meegoda*
Software Engineer - QA
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
email : [email protected]
mobile: +94783639540
<%2B94%2077%202273555>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev