cancel
Showing results for 
Search instead for 
Did you mean: 

HANA - SUP connection problems

Former Member

Hi

I was successfully able to connect both HANA and SUP.But when I dragged a table from HANA database to build a mobile business object it throws me an error

"This operation may not valid SQL statements for a non-Sybase database, and requires manual  editing. do you want to continue?". looks like a simple warning that  may not matter, so I clicked "OK".The following "Problem Occurred" window appears: "'Generate Mobile Business Object' has encountered a problem. In internal error occurred during: 'Generate Mobile Business Object'." the details reveals  java.lang.RuntimeException: com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [257]: sql syntax error: incorrect syntax near "SCHEMAS": line 3 col 34 (at pos 72)

and the MBO does not create any Attributes and Operations.Request your help in this regard

Thanks

Santosh

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi Santosh / Pravesh

Can you please share the documents (step by step) related to SUP and HANA Connectivity

EmailID: hdandhibhotla@yahoo.com / hdandhibhotla@gmail.com

Regards

DHH

0 Kudos

HI DHH

please find the document in the below link

http://scn.sap.com/docs/DOC-40974

regards

Trinoy Hazarika

Former Member
0 Kudos

Hey,

thanks everybody for the help and understanding but I already tried every of this options out. I've read allmost all the threads to this topic in the scn.

So I'll once more write down in a stap by step way what I did and how far I get along with this and what the problems are. A lot of people had several problems with that also.

System Landscape:

Serverside:

HANA 1.00.27 Server 64 bit

Sybase 2.1.0 64bit

Client/Developer Side:

HANA Studio Version 31 32 bit

Sybase Workspace 2.1 32 bit

Connection and MBO creation with Sybase sampleDB works fine.

1. Sybase Workspace: Create a Database connection thats points to the HANA Machine. The ngdbc.jar is needed and copied to the correct subfolder in the sybase workspace according to this Manual.

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.pubs.docset-SUP-2.1.0/doc/h...

The ngdbc.jar is the jdbc Driver for HANA Machines and can be found in the HANA Studio. Just search for it.

The Screens show how to do it and what parameters had to be set. The last screen shwos the schema of the HANA DB and the previous the succsesful ping to the machine.

- Create a new DB connection to the Hana. Create a new Connection type with its own connection parameters and jar Driver file.

- point to the driver file ngdbc.jar

- Set the correct parameters. Driver Class: "com.sap.db.jdbc.Driver"

- After that you can succsessful ping the HANA Machine. Watch out that all needed ports are open.

- You can see the different tables of the HANA in the Sybase Workspace Explorer

2. Sybase Server / Sybase Control Center(SCC).

Copy the ngdbc.jar to the correct path on the SERVERSIDE! See the prevoius link for the path.

and create a new Connection in the SCC according to the Screen. Than RESTART the machine or the driver cannot be found. After that you can Ping the HANA from the SCC like shown on the Screen.

3. MBO creation:

According to farious forum post it is not possible to create an MBO in the sybase workspace via drap an drop. So click on the "Mobile Buisiness Objects" Folder in your testproject and choose "New" -> "Mobile Buisiness Object".

-     choose Data Source Type JDBC and as Connection Profile the Name of the HANA DB      connection profile that we created previously. In my case I didn't rename it and it is the default      name "New Generic JDBC".

-  Now you can write a sql query to your HANA DB. And this is exactly what didn't work. I tried several querys that worked in the HANA Studio. But that is not the Porblem. Whenever I try to execute a query and proceed via next, there is the same error:

" Error executing on back-end server: java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver"

At this moment, in the Sybase Workspace I'm connected to the Sybase Server and the HANA DB.

The following Ports are open:

2000 2001 2480 2481 5001 8000 8001 5500

I asked the Netadmins to open also 5200 but they didn't open it till now

thats all. If anybody has any idea that would be great. But for all other people that had problems to get to this point this tutorial should help.

Greetings from Germany

David

Former Member
0 Kudos

Hi David,

Can you paste the screen shot as I have done .

As this will clear the situation, as of now your screen shot does not show the "Unwired Server ".

Regards
Pravesh

Former Member
0 Kudos

Hey Parvesh,

no probelm. Here it comes. But connection is working.

Former Member
0 Kudos

Hi David,

Give last try :

Un-install SUP and HANA, re-configure .

Regards

Pravesh

Former Member
0 Kudos

I un/reinstall my local Sybse workspace with no effect for sure.

We cann't un/reinstall the HANA server. There are several other systems using it.

I can connect via SQirrel, an open source SQL Workbench tool with the HANA. The connection is working but with sybase it has problems.

I try to see the complete Java Stack Trace via Java Console Serverside and Clientside, now. No Idea if that helps to find the error but I'd like to see the place in the javastack sump where the

java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver

is thrown.

I'm not sure if it is thrown on the server and passed to the Workspace or if it is thrown on my client.

Is the sybase Enterprise Server running in a JVM?

Greetings

Former Member
0 Kudos

So here's a little update the java stack trace of my error is:

java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver

java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver

  java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver

  com.sybase.uep.tooling.eis.JdbcEISMethod.getConn(JdbcEISMethod.java:220)

  com.sybase.uep.tooling.eis.JdbcEISStmtMethod.<init>(JdbcEISStmtMethod.java:42)

  com.sybase.uep.tooling.eis.JdbcEISOperationBuilder.getMethod(JdbcEISOperationBuilder.java:46)

  com.sybase.uep.tooling.eis.JdbcEISOperationBuilder.getMethod(JdbcEISOperationBuilder.java:34)

  com.sybase.uep.datasources.database.JDBCEISObjectFactory.createEISOperation(JDBCEISObjectFactory.java:81)

  com.sybase.uep.tooling.models.integrate.EISObjectFactoryDelegate.createEISOperation(EISObjectFactoryDelegate.java:45)

  com.sybase.uep.tooling.models.impl.EEISOperationImpl.getApiEISOperationObj(EEISOperationImpl.java:776)

  com.sybase.uep.tooling.ui.sections.PreviewSection$1.handleEvent(PreviewSection.java:297)

  org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

  org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)

  org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)

  org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)

  org.eclipse.jface.window.Window.runEventLoop(Window.java:825)

  org.eclipse.jface.window.Window.open(Window.java:801)

  com.sybase.uep.tooling.ui.diagram.extension.ui.actions.NewMobileObjectAction.run(NewMobileObjectAction.java:72)

  org.eclipse.jface.action.Action.runWithEvent(Action.java:498)

  org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)

  org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)

  org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)

  org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

  org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)

  org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)

  org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)

  org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)

  org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)

  org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)

  org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)

  org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

  org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)

  org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)

  org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)

  org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

  org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)

  org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)

  org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)

  org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)

  sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

  sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

  java.lang.reflect.Method.invoke(Method.java:597)

  org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)

  org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)

  org.eclipse.equinox.launcher.Main.run(Main.java:1407)

  org.eclipse.equinox.launcher.Main.main(Main.java:1383)

Eclipse is running in the Osgi equinox runtime. If you start Eclipse with the "java.exe" in opposite to the "javac.exe" command you are able to enter the osgi conole and the debug mode by append -console -debug -consoleLog at the right plase in the unwiredworkspace.bat where all the eclipse starting stuff is placed.

here you can install the jdbc driver as a plugin.

install file:c:\ ... \ngdbc.jar

run diag [pid] for diagnostics

you can see that there are unresolved constrains that point to the maxDB jdbc driver of sap(I goggeld that, so I get the maxDB jdbc jar file)

so do the same with sapdbc.jar

install file:c:\...\sapdbc.jar

diag pid

and again for ngdbc.jar than there is no error and the drivers should be present at runtime. But no way the error stays the same.

If have no idea what to do next.

here's the screenshot

Former Member
0 Kudos

Parvesh,

I have to excuse myself. I put the ngdbc.jar in so many different folders that I oversee that you already mentioned to put it into the "\Sybase\UnwiredPlatform\Eclipse\endorsed\ " folder

this folder is pointed in the sybaseworkspace.bat file via the parameter

-Djava.endorsed.dirs="%ECLIPSE_ROOT%\endorsed"

It was there all the time but I didn't see it. sorry

http://docs.oracle.com/javase/6/docs/technotes/guides/standards/index.html

Former Member
0 Kudos

hello David,

i am facing same error java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver

while drag-drop the table from HANA DB could you please help if you have got this error resolved.

Thanks, prem

Former Member
0 Kudos

Hey PremNarayan,

you cannot drag and drop from an HANA Database in Sybase. Use Right-Click and than "Create MBO ...."

That should work

0 Kudos

Hi David

i am facing the same issue while trying to create the MBO manually. were you able to solve the issue.

Regards

Trinoy

0 Kudos

Hi David,

I had the same problem. I restarted the SUP services and then again started the Mobile SDK and was able to create the MBO using Sql Queries.

Might be you can also try that once and see if it working for you.

Regards

Trinoy Hazarika

Former Member
0 Kudos

Hey, I'm trying to connect to a HANA via Sybase Workspace. I think I'va already read every post in the SCN and the first five google pages for farious combinations of search words.

We use Sybase 2.1.0.

I'm able to get a connection via SCC and the Sybase Workspace to my HANA machine.

In the Sybase Workspace I can explore the HANA DB Schema and in the SCC I can set a succsessful ping to my HANA machine.

Ask me for the correct properties if you have problems in achiving this.

HINT: You have to restart your Sybase Enterprise Server if you copy the jar driver to the correct path!

So if I'm trying to set up my MBO via the "generic JDBC connection" which represent my working HANA connection in the Sybase Workspace I always get the

" Error executing on back-end server: java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver" Message although my backend Server Connection is working well.

In several differnt posting many peole facing the same error. So if anyone who was able to fix this issue could provide some working solution that would be very helpful.

Greetings

David

Former Member
0 Kudos

Hi David

  Can you paste the Screen shot of HANA Configuration in Sybase Control Center.Ideally if you are able to access the schema you should not face any problem , more over please let us know the versions of your HANA and Sybase 32 bit or 64 bit.

Thanks

Santosh Varada

Former Member
0 Kudos

Hey Santosh,

thanks for your quick reply.

We using

Serverside:

HANA 1.00.27 Server 64 bit

Sybase 2.1.0 64bit

Client/Developer Side:

HANA Studio Version 31 32 bit

Sybase Workspace 2.1 32 bit

on my 32 bit development System (don't ask).

I place the jar Files in the correct Folders, according to the manual

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.pubs.docset-SUP-2.1.0/doc/h...

In the Sybase Workspace the configuration for the HANA_Connection:

url:               jdbc:sap://[my_Server]:30015?reconnect=true

Database:     [The Database name]

user:             [the user]

pw:               ***

path to jar:     C:\Sybase\UnwiredPlatform\ThirdParty\ngdbc.jar  (from the Hana Studio Ver. 31)

driver class:    com.sap.db.jdbc.Driver

on the Sybase Enterprise Server Version 2.1.0.236 in the scc i have the follwing configuration for the HANA Connection:

see screenshot

That's all.

I already managed to connect to the HANA via ex. SQuirrel an SQL Management Tool, it works fine, but in sybase not.

Former Member
0 Kudos

Hi David,

Please let us know :

1. Are you able to ping the Unwired Platform Server ( HANA connection in the Sybase Workspace ) ?

2. Copy the ngdbc.jar file (HANA JDBC connector) into the <SybaseInstall>\UnwiredPlatform\Eclipse\endorsed directory.

Regards

Pravesh.

Former Member
0 Kudos

Hey Pravesh,

thanks for your reply.

to 1:  the ping form the scc works fine (see screenshot)

to 2: the link in my previous post leads to the section in the sybase documentation where you can find the path to copy the ngdbc.jar server and client side to. I copied it to this path.

Regards

David

Former Member
0 Kudos

Hi David,

Basically, my question is related to the ping from Sybase WorkSpace and not SCC.

Also request you to look at my question 2 ,  as i did in my case and it work.

Regards

Pravesh

Former Member
0 Kudos

Hey,

ping works fine in every constellation, as I already mentioned: "In the Sybase Workspace I can explore the HANA DB Schema and in the SCC I can set a succsessful ping to my HANA machine."

the jar lib is at the correct path. But still the same error.

Former Member
0 Kudos

Hi David.

I guess we are trying to prove each other what need to do/ what we did ...

There are 2 connections in Sybase Workspace check the screen shot , one is for Database connections and other Unwired Servers.

Regards
Pravesh

Former Member
0 Kudos

Hi David,

I guess you are trying to  create the MBO by dragging the table from the HANA table directly. ( But when I dragged a table from HANA database to build a mobile business object it throws me an error) ...

The solution to this is to manually create the MBO's

So you can't directly drag and drop a table from the database. For me, I created the MBO manually (New ->Mobile Business Object), and then choose the connection profile and use the SQL query to bind the data. It works this way. (http://scn.sap.com/thread/3153241) ,,

Hope this helps you..

Regards
Pravesh

Former Member
0 Kudos

Hello David

   As you have tried every thing and lookin at your screen shots from configuration perspective every thing looks fine butI guess the problem you are facing could be due to version mismatch of your server and client versions , can you try by keeping all of them in the same version either 64 or 32 bit.

Awaiting your feedback

Thanks

Santosh Varada

Former Member
0 Kudos

Hi Santosh,

I understand that you are successfuly able to connect the HANA and SUP. Currently we need to achieve the same. I went through the discussion : http://scn.sap.com/thread/3153241 where you have mention the various issues and got resolved.

I am in same situation , not able to create MBO and getting the error :

An internal error occurred during: "Generate Mobile Business Object".

java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sap.db.jdbc.Driver.

It would be really good if you can help me on this.

Regards

Pravesh

Former Member
0 Kudos

Hi Pravesh

Sure I can help you , Can you share your mailId,meanwhile I try to document the steps,also mention which version of SUP you are using.

Regards

Santosh

Former Member
0 Kudos

Hi Santosh,

Thanks for your reply.

my mailid : pravesh_md@yahoo.com

SUP version : SUP 2.1.0

I am awaiting your reply.....

Regards

Pravesh

Former Member
0 Kudos

Hi Pravesh

   I have sent the steps to be followed to your mail id ,let me know if  you are still facing any issues.

Regards

Santosh

Former Member
0 Kudos

Hi Varada

I have also run into the same error as Pravesh (ClassNotFoundException) and would appreciate any advice on the matter.

Thanks

amey_baisane
Participant
0 Kudos

Hi Santosh,

If you have prepared the document for the SUP and HANA connection, could you please share this here. So that all the other also can get benefit out of it.

Currently I am also trying to do the same thing....

Kind Regards,

Amey Basiane

0 Kudos

HI Amey,

I have prepared a documents with the steps. You can check out the same at the below link.

http://scn.sap.com/docs/DOC-40974

Hope it is helpful.

Regards

Trinoy Hazarika

amey_baisane
Participant
0 Kudos

Hey Trinoy,

Thanks for sharing this.....

Kind Regards,

-Amey Baisane