It's all about the answers!

Ask a question

RAM 7.2 to 7.5 : Asset submission


Abhinav Ajmera (22113020) | asked Nov 02 '10, 8:03 a.m.
While using RAM 7.5 API, I am getting below error (when submitting asset)

HTTP Error trying to upload. (500: Internal Server Error), STATUSTEXT:Internal Server Error, RESPONSE:Error 500: javax.servlet.ServletException: Filter : filter is unavailable.

I have tried many option to resolve this with no luck..

Please note I am not using any deprecated method from 7.2 to 7.5.

10 answers



permanent link
Kevin Bauer (34621) | answered Nov 02 '10, 9:51 a.m.
JAZZ DEVELOPER
Can you get the error from the server side? 500 means an unexpected error occurred on the server.


While using RAM 7.5 API, I am getting below error (when submitting asset)

HTTP Error trying to upload. (500: Internal Server Error), STATUSTEXT:Internal Server Error, RESPONSE:Error 500: javax.servlet.ServletException: Filter : filter is unavailable.

I have tried many option to resolve this with no luck..

Please note I am not using any deprecated method from 7.2 to 7.5.

permanent link
Abhinav Ajmera (22113020) | answered Nov 08 '10, 2:38 a.m.
Can you tell, how/where to get this error from server...

Can you get the error from the server side? 500 means an unexpected error occurred on the server.


While using RAM 7.5 API, I am getting below error (when submitting asset)

HTTP Error trying to upload. (500: Internal Server Error), STATUSTEXT:Internal Server Error, RESPONSE:Error 500: javax.servlet.ServletException: Filter : filter is unavailable.

I have tried many option to resolve this with no luck..

Please note I am not using any deprecated method from 7.2 to 7.5.

permanent link
Sheehan Anderson (1.2k4) | answered Nov 08 '10, 8:39 a.m.
JAZZ DEVELOPER
Can you tell, how/where to get this error from server...


Log in as the administrator and navigate to Administration -> Tools. In the bottom right corner of the tools page you will see a Logs sections where the support logs can be viewed/downloaded. ramDebug.log, SystemOut.log, and SystemErr.log are the server side log files.

permanent link
Abhinav Ajmera (22113020) | answered Nov 08 '10, 11:31 p.m.
Below is summary for server side error:

CRRAM0002W 9959813 WARN web com.ibm.ram.common.util.ValidationManager - Artifact Accessor is null XML content could not be validated.

and

CRRAM0001E 1390 ERROR web com.ibm.ram.repository.web.security.RAMServletContextListener - Could not start the web servlet.
com.ibm.ram.repository.core.IRepositoryAccess$RepositoryException: Could not connect to data resource: RAM_Con.
at com.ibm.ram.repository.core.sdo.BaseRAMSchemaAccess.getDatasource(BaseRAMSchemaAccess.java:507)
at com.ibm.ram.repository.core.sdo.BaseRAMSchemaAccess.createJDBCConnection(BaseRAMSchemaAccess.java:2038)
at com.ibm.ram.repository.core.sdo.BaseRAMSchemaAccess.getConnectionWrapper(BaseRAMSchemaAccess.java:1036)
at com.ibm.ram.repository.core.sdo.BaseRAMSchemaAccess.getConfiguration(BaseRAMSchemaAccess.java:11213)
at com.ibm.ram.repository.configuration.SimpleConfiguration.getPropertyFromDB(SimpleConfiguration.java:565)
at com.ibm.ram.repository.configuration.SimpleConfiguration.getProperty(SimpleConfiguration.java:482)
at com.ibm.ram.repository.web.security.RAMServletContextListener$1.run(RAMServletContextListener.java:160)
at com.ibm.ram.was.WebsphereAccessInstance$2.run(WebsphereAccessInstance.java:775)
at com.ibm.ws.asynchbeans.J2EEContext.run(J2EEContext.java:782)
at com.ibm.ws.asynchbeans.WorkWithExecutionContextImpl.go(WorkWithExecutionContextImpl.java:222)
at com.ibm.ws.asynchbeans.ABWorkItemImpl.run(ABWorkItemImpl.java:159)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1550)
Caused by:
com.ibm.websphere.naming.CannotInstantiateObjectException: A NameNotFoundException occurred on an indirect lookup on the name java:comp/env/RAM_Con. The name java:comp/env/RAM_Con maps to a JNDI name in deployment descriptor bindings for the application performing the JNDI lookup. Make sure that the JNDI name mapping in the deployment descriptor binding is correct. If the JNDI name mapping is correct, make sure the target resource can be resolved with the specified name relative to the default initial context. ]
at com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt(Helpers.java:1013)
at com.ibm.ws.naming.urlbase.UrlContextHelper.processBoundObjectForLookup(UrlContextHelper.java:175)
at com.ibm.ws.naming.java.javaURLContextRoot.processBoundObjectForLookup(javaURLContextRoot.java:402)
at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1249)
at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:395)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:214)
at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:154)
at javax.naming.InitialContext.lookup(InitialContext.java:455)
at com.ibm.ram.repository.core.sdo.BaseRAMSchemaAccess.getDatasource(BaseRAMSchemaAccess.java:505)
... 11 more






Can you tell, how/where to get this error from server...


Log in as the administrator and navigate to Administration -> Tools. In the bottom right corner of the tools page you will see a Logs sections where the support logs can be viewed/downloaded. ramDebug.log, SystemOut.log, and SystemErr.log are the server side log files.

permanent link
Abhinav Ajmera (22113020) | answered Nov 09 '10, 12:27 a.m.
Also when i compared errored Manifest file and the one which is successfully submitted, only difference i can see is absence of state..

errored: defaultprofile:Asset xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile22.ecore" name="listEventMessages"
id="646863F3-FF30-6EC0-72DA-4796BFFE7312" version="1.0" shortDescription=".."

Submitted : defaultprofile:Asset xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:defaultprofile="http:///defaultprofile22.ecore" name="listContractCallingFromCallingTo"
id=&quot;4A84C7D2-136A-4519-E854-588E646A4414&quot; <b>state=&quot;Approved&quot;</b> version=&quot;1.0&quot; shortDescription=&quot;..&quot;

Please note, I am not setting state in my program (if i try to do that, it says - - state can be set only by server) (and it is working perfactly for 7.2 and 7.2.0.1)

Also out of 38 submission, sometime it submit all the asset with no error, sometime just 17, 20, 26 (in random)......

permanent link
Abhinav Ajmera (22113020) | answered Nov 23 '10, 1:10 a.m.
I found the root cause...

I have webservices (WSDLs) and operations both as asset type. Now operation assets should relate to WSDL asset.

Now if I have WSDL with say 40 operation (i know ideally it should be &lt;25, but its old wsdl), so i have to relate 40 operations assets to one wsdl asset.

which i am performing as below

for(somelogic &lt;repeat&gt;)
{
RAMAsset relateToAsset = session.getAsset(new AssetIdentification(&lt;some&gt;,&quot;*&quot;));
ramAsset.addRelatedAsset(relateToAsset, session.getRelationshipType(reltype_val));
}

Now without above set of code (and with above code, loop&lt;15&gt;50)?


Note : its just key part of code, and overall logic is such that I just can't create single relateToAsset and relate to all operation, and have to create relateToAsset all 40 times...

permanent link
Kevin Bauer (34621) | answered Nov 23 '10, 10:01 a.m.
JAZZ DEVELOPER
Abhinav,

How is your server setup (are you using was or tomcat, did you use the setup assistant, what does the configuration of your JDBC data source look like)? Could it be that you have not defined enough possible connections to you database to handle this type of a bulk update?


I found the root cause...

I have webservices (WSDLs) and operations both as asset type. Now operation assets should relate to WSDL asset.

Now if I have WSDL with say 40 operation (i know ideally it should be &lt;25, but its old wsdl), so i have to relate 40 operations assets to one wsdl asset.

which i am performing as below

for(somelogic &lt;repeat&gt;)
{
RAMAsset relateToAsset = session.getAsset(new AssetIdentification(&lt;some&gt;,&quot;*&quot;));
ramAsset.addRelatedAsset(relateToAsset, session.getRelationshipType(reltype_val));
}

Now without above set of code (and with above code, loop&lt;15&gt;50)?


Note : its just key part of code, and overall logic is such that I just can't create single relateToAsset and relate to all operation, and have to create relateToAsset all 40 times...

permanent link
Abhinav Ajmera (22113020) | answered Nov 24 '10, 5:48 a.m.
Hi,

I am using WAS, I did used the setup assistant, I have applied default (suggested by ram.setup) JDBC data source. I even defined more than 400 possible connections to my database (its working with same setting at RAM7.2).

Abhinav,

How is your server setup (are you using was or tomcat, did you use the setup assistant, what does the configuration of your JDBC data source look like)? Could it be that you have not defined enough possible connections to you database to handle this type of a bulk update?



permanent link
Kevin Bauer (34621) | answered Nov 24 '10, 1:58 p.m.
JAZZ DEVELOPER
What version (with fix pack level) of WebSphere are you using? Do you only get these errors when doing an upload via the API? Does the web UI work correctly when trying to look up a database connection?

Hi,

I am using WAS, I did used the setup assistant, I have applied default (suggested by ram.setup) JDBC data source. I even defined more than 400 possible connections to my database (its working with same setting at RAM7.2).


permanent link
Abhinav Ajmera (22113020) | answered Nov 24 '10, 11:53 p.m.
Its WAS 7.0.0.11, and this error is only while uploading via RAM API.


What version (with fix pack level) of WebSphere are you using? Do you only get these errors when doing an upload via the API? Does the web UI work correctly when trying to look up a database connection?

Hi,

I am using WAS, I did used the setup assistant, I have applied default (suggested by ram.setup) JDBC data source. I even defined more than 400 possible connections to my database (its working with same setting at RAM7.2).

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.