cancel
Showing results for 
Search instead for 
Did you mean: 

WebDynpro vs Oracle

Former Member
0 Kudos

Greetings to all!

We had been two weeks trying to develop a simple application with Web Dynpro that brings data from an Oracle database. We have defined a table in the Java Dictionary with such fields and names that in the data base. We have created a project J2EE with a EJB Entity with properties and methods for the fields of the table. For the tableView model in Web Dynpro we had to use a Java conventional Bean since it did not accept the EJB import directly. Also we have defined a system with the connection properties, user, password... of the Database. Everything seems to work fine, but sometimes we obtain the java.lang.NoClassDefFoundError exception: com/sap/tc/webdynpro/progmodel/gci/IGCIComponentDelegate and the others just an empty tableView. Can somebody help us? It would be to us of much utility a simple project of this kind with all the properties, detailed references...

Thank you very much in advance.

Accepted Solutions (0)

Answers (6)

Answers (6)

Former Member
0 Kudos

Hi Bernardo,

I solved this problem by creating a Session-EJB which calls the Entity-Bean. I created a Web-Service and imported it as a Web-Service Model into my Web Dynpro Application. It works fine.

Former Member
0 Kudos

I did it, but it still doesn´t work. Any more ideas? Thanx.

Former Member
0 Kudos

Hi Bernardo,

i hope i can help you a little bit. I had the same error. I had to map the database-instance manually somewhere in a configuration-tool. Unfortunately i cant remember which tool it was (I am sure it was not the SLD, perhaps the Visual Admin? or one of the others?)

Good luck

Former Member
0 Kudos

Thanks for the replies. I included the EJB in the Sharing References of the WebDynpro project and also included the vendor driver libs of my external database in the J2EE project but I still don´t see data in the TableView. This is the message I get when I execute the WebDynpro application:

Caused by: com.sap.engine.services.deploy.exceptions.ServerDeploymentException: Application sap.com/accesoMaxDB cannot be started. Reason: it has hard reference to resource jdbc/Oracle with type javax.sql.DataSource, which is not active on the server.

Any idea please? Thanks in advance.

Former Member
0 Kudos

Hi Bernardo,

This problem comes because, J2ee applcation cannot take driver file with it on server at deployment time.

So, do one thing. Make one library project and then add your required libraries for oracle in this.

Now, deploy this project on server.And provide reference of this library project in your EAR project under applicatio-j2ee-engine.xml file.

Regards,

Bhavik

Don't forget to award points if it was helpful.

Former Member
0 Kudos

Hi Bernardo,

One more point.

After including these Driver files correctly in your project, you need to specify sharing reference of your EJB in webdynpro application. Webdynpro application uses this sharing reference to get EJB from server at runtime.

Goto properties of your webdynpro project and there select webdynpro references-> sharing references.

Add following reference there.

sap.com/<EAR project name>

Regards,

Bhavik

guru_subramanianb
Active Contributor
0 Kudos

Hi,

The reason for this being you are not including the driver files from Vendor (oracle in this case) in your class path.

Right click your project in ur studio -> select properties ->select your driver files from ur local system -> apply it.

Once the classpath is set through the driver file you will not get that exception.

Hope it helps.

Regards,

Guru