Migration: Visual Studio 2015 to Water

Hi,

Good Afternoon.

Well, we’ve been trying migrate a legacy project from Visual Studio 2015 to IDE Water, but, we are facing some difficulties to compile the code made in Oxygene (VS 2015) to the new IDE Water.

  1. First of all, we need to know if the new versions of Elements Oxygene is exclusively made for IDE Water, or we could still compile using Visual Studio (we downloaded the lasts releases (Elements and Data Abstract (Water, Visual Studio and Delphi ).

  2. Some of our services (that were made using Oxygene) are Soap Services, made in VS 2015. We are trying to compile in Water, but fail the compilation process, it returns these kinds of messages:

W: Unknown or unsupported Generator ‘WCF Proxy Generator’ for file ‘Service References\BoticarioSiscobraServicos\Reference.svcmap’.

These errors are references in *.oxygene file generated by VS 2015.

It`s possible migrate Soap legacy codes to compile in Water?

  1. There is a tool or procedure to generate a Soap Service reference inside IDE Water like VS? It`s necessary generate all Service References again?

Usefull informations:
Actual Version that we are using in production: RemObjects Elements with Visual Studio 2015 - 9.3.103.2211.exe.
Trying update to: RemObjects Elements with Water - 10.0.0.2605.exe

Congrats.

Sry for my English.

Thx

Anderson.

Yes, Oxygene continues to support Visual Studio 2017 and 2019, in addition to Water.

Curious., this was a know issue but should have been fixed a few weeks ago, but it looks iike there might have been a typo. I have just now fixed this for tomorrow’s build.

not currently, no. You will need to open your projects in Visual Studio for that, even if you work in Water the rest of the time.

yours,
maerc

Hello,

Acctually I fixed the problems that I mentioned in this topic. I had to reimport each folder again to be effectivelly readed by the compilers. In addition it was possible run in Water or Visual Studio 2019.

  • But now, Im in doubt about Server_Access file. The compiler is often asking to generate this file, so Ive openned the Edit Library and did it. Follow an snippet of the file:

constructor ServerAccess;
begin
self._serverUrl := ‘http://yourserver.example.com:8099/bin’;
self._clientChannel := ClientChannel.ChannelMatchingTargetUri(self._serverUrl);
self._message := Message.MessageMatchingTargetUri(self._serverUrl);
end;

method ServerAccess.get__LoginService: not nullable ILoginService;
begin
exit CoLoginService.Create(self._message) clientChannel(self._clientChannel) as not nullable;
end;

However it returns the error while compiling:

|Erro||(E600) Parameter labels do not match. Parameter 2 is labeled clientChannel but should be unlabeled in call to class method Create(message: IMessage; clientChannel: IClientChannel): CSLog.dxserver.ILoginService_Async|dxserver|D:\siscob_trunk\net\dxserver\dxserver_ServerAccess.pas|634||

What I must to configure to be generated correctly?

  • Another problem Its with the URL asked at Edit Box

http://yourserver.example.com:8099/bin’;

I got an warning like:

(W46) Potential null value is implicitly cast to not nullable IMessage|dxserver|D:\siscob_trunk\net\dxserver\dxserver_ServerAccess.pas|624||

What could be?

Thank you.

Let me loop in my colleague Anton here, here’s more familiar with the Remoting SDK side of things.

Hello

Compiler itself should not care about this file at all. If you don’t use it then you can safely remove it.
The code in ..._ServerAccess file is intended to be used as a starting point in your server infrastructure.

This is a bug obviously. The code line should look like

exit CoLoginService.Create(self._message, self._clientChannel) as not nullable;

Could you show the code around this line?

Regards

Hi,

Compiler itself should not care about this file at all. If you don’t use it then you can safely remove it.
The code in ..._ServerAccess file is intended to be used as a starting point in your server infrastructure.

Understood, but while compiling it asks for this file.

Could you show the code around this line?

It is shown at constructor lines, self._clientChannel and self._message. Have we configure this entry point at local machine and in the server?

constructor ServerAccess;
begin
self._serverUrl := ‘http://yourserver.example.com:8099/bin’;
self._clientChannel := ClientChannel.ChannelMatchingTargetUri(self._serverUrl);
self._message := Message.MessageMatchingTargetUri(self._serverUrl);
end;

Could you provide exact compiler message?

It should point to your server Url, otherwise client won’t be able to connect to it.

Thanks, logged as bugs://85681

Hello.
We were capable of generating the build correctly for many of files of our project.

However at moment we are trying compile an specific Web Reference. But still getting the problem.

3>Software\Elements\RemObjects.Elements.Echoes.targets(53,3): warning : Unknown or unsupported Generator ‘WCF Proxy Generator’ for file ‘Service References\SantanderBoletoTicket\Reference.svcmap’.

And the error.

method CSLog_dxserver_SantanderBoletoTicket_TicketEndpoint_create(request: CSLog.dxserver.SantanderBoletoTicket.createRequest): CSLog.dxserver.SantanderBoletoTicket.createResponse; implements CSLog.dxserver.SantanderBoletoTicket.TicketEndpoint.create;
error E168: interface member name expected

We did a new Service Reference and it seems correct.

Is this a new version that will be released?

Version in use: RemObjects Elements with Water - 10.0.0.2605.exe

Thank you!

I believe that is fixed in last week’s build (2607)…

this one i can not comment on without seeing more of the code. can you reproduce this error in a smaller test case you can send us? i assume CSLog.dxserver.SantanderBoletoTicket.TicketEndpoint is an interface, and has a matching method called create?

I believe that is fixed in last week’s build (2607)…

How can I download this new version?

this one i can not comment on without seeing more of the code. can you reproduce this error in a smaller test case you can send us? i assume CSLog.dxserver.SantanderBoletoTicket.TicketEndpoint is an interface, and has a matching method called create ?

It`s matching because in others projects are ok this is the file References, generated by the Services References.

I`ll try reproduce.

Thank you!

https://www.remobjects.com/portal/downloads/

thanx!

https://www.remobjects.com/portal/downloads/

I`ve just found the version 2605.

If you had cropped that screenshot a bit larger, you’d see 2607 below :joy:.

It’s disabled.

Hm, that’s strange. What user are you logged in as? The license I see on your account is still active, but doesn’t match the date shown in your screenshot… it looks as iff the website is confused about your license status, but I cant imagine how that would happen, right now.

Hi

Even trying by the main account of the company. It`s disabled.

The licence is active.

Thx

Reproduced with your account. I’ll have a look and see whats going on here, and get that fixed ASAP.

Hi

Ok, I’ll Wait

About the example, I created an RemObject SDK Server Test using my enviroment configurations.

Adding the server reference and trying to build using Visual Studio 2019.

I got the same error.

Follow an example attached.

Thank you.RemObjectsServerTest.zip (77.4 KB)

Fixed; my sincerest apologies for this!