Remoting SDK 9.0.95

Major new release 9 of the award-winning cross-platform remoting framework from RemObjects.
March 25, 2016
New Version

Features

  • New Features:
    • Vastly improved SSL/TLS support.
    • New _ServerAccess helper class generated when connecting to server.
    • New ApplicationServer class to encapsulate boilerplate code.
    • All new CodeGen4-based code generation.
    • Code-First server support.
  • New Enhancements:
    • Switch to CodeFirst in Data Abstract Server templates - C#
    • Support --console as startup parameter (similar to --commandline)
    • Add support for 'Abstract' RODL structures
    • Improve lock handling in the SchemaAccess.RetrieveCachedSchema method
    • Improve NetworkServer interface by allowing more configuration options
    • RO UX: Adjust VS IDE menu item names to match Fire
    • RO UX: File generated during CF conversion should have name _RodlTypes, not _ServerTypes
    • RO UX: Show page http://docs.rosdk.com/Servers/CodeFirst/ConvertToCodeFirstNET/ after the final step of Classic Server -> CF Server conversion
    • Move RemObjects SDK menu under Tools
    • RO UX: Provide custom editor for .remoteRODL files
    • RO UX: Provide Solution Explorer button for RODL import
    • RO UX: Disable RO UX for Web Site projects
    • RO UX: Provide context menu item to import RODL for .remoteRODL files
    • RO UX: Refit the RODL browser dialog to accept/return rodl location in both server uri and rodl file form
    • RO UX: ZeroConfBrowser form should return fully qualified ServerUri
    • RO UX: IDE forms should reuse header image from the resources
    • RO UX: Improved experience for RODL files import
    • Add option "Convert to Code First Server" to the RODL context menu
    • Add context menu to launch Service Builder when a RODL file is selected
    • New PoweredBy images for v9
    • Restore VS2010 support in RO/.NET and DA/.NET
    • Improve the way BaseConnection handles errors on transaction Commit and Rollback operations
    • Speed up cache access in Serializer
    • Speed up data access in TypeManager and ServiceManager
    • Update service invoker so it won't rely on reflection to call service methods

Fixes

  • 74799: Broken HTTP authentication in plain Http requests sent over SuperHttp channel
  • 74768: SSL/TLS: Make hash algorithm customizable for the auto-generated certificates
  • 74754: Oxygene, ROC# and Swift item templates aren't displayed in VS
  • 74711: Bad references in the Oxygene RO SDK Server templates
  • 74681: Expose methods to close and open the server channel in the IServerChannel interface
  • 74661: Olympia Server cannot start due to a missing component license
  • 74642: IP/.NET: Update code file headers
  • 74538: Provide better error diagnostics for SuperHttp connection issues
  • 74537: SSL/TLS: Make subject and issuer customizable for the auto-generated certificates
  • 74530: CG4 should validate used RODL
  • 74486: SSL/TLS: No timeout support for SslStream on Mono
  • 74484: SSL/TLS: Remove direct Mono.Security calls from SSL connection
  • 74480: Validate button is no longer available in the Service Builder
  • 74475: Use consistent naming ('filename' vs 'fileName')
  • 74474: SSL/TLS: Expose certificate-related properties in NetworkServer
  • 74463: SSL/TLS: Update RO SDK templates to use the new API
  • 74457: SSL/TLS: Add AutoGenerateCertificate feature to the server boilerplate code
  • 74456: SSL/TLS: Use less sophisticated hash algorithm for self-generated certificates to maintain better compatibility with Mono
  • 74448: SSL/TLS: RODL Import form doesn't accept data from TLS-only services run on Mono 3.2.8
  • 74447: SSL/TLS: Use System.Security.Cryptography.* classes by default form even on Mono
  • 74446: SSL/TLS: "Incorrect IL" error in certificate generator on Mono (seems to be related to Mono.Security 4.0)
  • 74445: SSL/TLS: Mono 3.2.8 refuses to load cartificate it just generated from a byte array (but loads the same cert from a file)
  • 74444: SSL/TLS: Extract separate interface to simplify access to SSL options
  • 74422: SSL/TLS: Certificate generated using .NET certificate builder is not accepted by Mono.Security SSL infrastructure
  • 74409: SSL/TLS: Make HashAlgorithm configurable in the CertificateBuilder
  • 74408: SSL/TLS: Streamline Mono.Security dependencies in Mono CertificateBuilder
  • 74407: SSL/TLS: Implement base CertificateBuilder for .NET and Mono
  • 74402: CG4: problem with loading items from broken RODL
  • 74359: Rename the internal server channel Open/Close methods
  • 74355: Service Tester: Problem with loading tests if out struct was present in test
  • 74354: Change SSL initialization server-side code to load the certificate earlier
  • 74333: SSL/TLS: Add 'load certificate by thumbprint' feature
  • 74321: SSL/TLS: Connection with wrong protocol selection (SSL vs TLS) breaks the server app with NRE
  • 74320: SSL/TLS: Use TLS protocol by default
  • 74307: Service Tester: Problem with reading UserInfo
  • 74273: IpSuperHTTP server channel returns broken RODL stream
  • 74257: SSL/TLS: Allow RODL import for secured server channels
  • 74256: SSL/TLS: Provide better way to choose between SSL, TLS and TLS 1.2
  • 74255: SSL/TLS: Change secured TCP/SuperTCP protocol names to tcps/supertcps accordingly
  • 74228: Explicitly define the encoding of the string that is being read from the Stream in the StreamHelper methods
  • 74169: Server Info page: Section links are broken
  • 74149: SB migrated to CoeGden4
  • 74104: Server Info page: RODL elements without Ancestor have unnecessary empty braces
  • 74085: ServiceManager should provide better caching of abstract services
  • 74072: Xml data type does not pass RODL validation
  • 74056: ServerInfo Pages (Dispatchers/RODL/Documentation) - UTF-8 support isn't consistent
  • 74055: Sort elements on the ServerInfo page
  • 74021: SingletonClassFactory constructor provides incorrect ActivatorClass to its base constructor
  • 74014: RODL containing Guid type doesn't pass validation
  • 73992: RODL html Documentation: C# Syntax isn't displayed correctly
  • 73973: SuperHTTP code cleanup
  • 73969: Streamline the internal LocalChannel interface
  • 73955: Minor ".remoteRODL Import-UI" bug
  • 73948: Typos in Remoting SDK Server Templates
  • 73945: Update the LocalChannel sample
  • 73910: SuperHttp fails to reconnect on unstable network connections
  • 73903: SchemaUri: Type Attribute access fails with FlieNotFound exception
  • 73891: RODL duplicate items checks are case-sensitive (while the RODL itself should be case-insensitive)
  • 73795: Update the HttpSpy sample
  • 73787: Change the way RODL namespaces are handled by the .NET CodeGen
  • 73767: ASP. NET 5.0: License check fails with UriFormatException
  • 73752: HttpSys server channel throws an exception when the channel is closed (on Mono 4+)
  • 73738: ClientChannel Uri match search fails with ReflectionTypeLoad exception
  • 73609: Incorrect typeof call in the BaseConnection.GetStoredProcedureParams method
  • 73585: Last step of "Convert to CodeFirst" opens wrong URL
  • 73583: VB.NET server templates contain C# code
  • 73582: Provide more info in the exception message when CodeFirst cannot publish a method
  • 73479: ODBC.NET driver doesn't work with connections based on DSN
  • 73440: Old RO SDK templates aren't deleted properly during RO SDK installation
  • 73439: C# templates contain broken references
  • 73436: Update all RO SDK templates to mention "Remoting SDK" and to deploy only server projects
  • 73394: Adjust CF codegen to generate service interface too (w/o proxy class)
  • 73392: Move identifier cleanup method into the StringHelpers class
  • 73383: Ensure that there is no NRE when the NetworkServer property is accessed
  • 73294: Provide proper icon for .remoteRODL files in Solution Explorer
  • 73261: SB should import .RODL via all supported protocols (tcp, supertcp, http(s), superhttp, udp)
  • 73208: Remove enum ZeroConfEngine (it is not used anywhere)
  • 73203: Cache check results for Is...SdkInstalled methods in RO.SDK.IDE.Services
  • 73189: Clean up the RO.SDK.IDE.VS assembly code
  • 73157: “RemObjects SDK|Service Builder” menu item should be available only if RODL is already present in the project
  • 73131: Provide factory class for Async service proxy class similar to one for the Sync service proxy
  • 73090: Provide IDE option to convert server from RODL-based app into a CodeFirst-based one
  • 73070: Drop old RemObjects/.NET templates hook new ones (C#)
  • 73022: SOAP importer fails to properly import 'choice' type where one or more elements have property 'maxOccurrs' set to 'unbounded'
  • 72988: Proxy class should be able to properly work with obsolete _Intf code
  • 72918: RemObjects SDK assemblies throw PEVerify errors
  • 72892: Extract Reflection features access into a separate ReflectionHelpers class
  • 72873: New Project Wizard cannot connect to the Relativity Server due to misformed client-side _Intf file
  • 72838: Dynamic RODL generator fails when its AppDomain contains dynamic modules
  • 72738: Service Proxy (_Intf) classes contain incorrect Implementation clauses in VB.NET
  • 72732: Message instance is not cleared up when the _Intf service proxy method fails with an exception
  • 72719: JSON Message doesn't properly initialize the service method request info, including the remote service and method name
  • 72669: Remove excessive 'Obsolete' warnings in _Intf classes
  • 72660: Service Builder: .NET 2.0 is used to load and execute .NET Code Generators while Oxygene one requires .NET 4.0+
  • 72659: Service Builder: Expose the "await Support" option of the .NET _Intf CodeGen
  • 72651: Provide a configuration load method that accepts a list of service types
  • 72645: Extend internal interfaces of MessageEnvelope to provide unique customer id to the data wrap method
  • 72608: Allow to customize the Access-Control-Allow-Headers header for CORS
  • 72572: RO and DA WP extensions are showing incorrectly in the Add Reference dialog
  • 72564: Avoid unnecessary 'NotSupportedException' on server startup when events stuff is being dynamically compiled
  • 72561: Server crashes on startup when the same method is marked with ServiceMethod attribute more than once in inherited service classes
  • 72548: RODL generation shouldn't fail if one or more domain assemblies cannot expose their public types
  • 72526: Configuration.IsLoaded fails with NRE if called before Configuration.Load
  • 72487: Provide API to define custom service event invokers
  • 72486: TypeManager should store references to all ComplexType structures
  • 72238: PerClientClassFactory: Possible Race Condition
  • 72237: Pooled entries aren't disposed when the pool is resized
  • 72213: Allow to resize the service pool in PooledClassFactory
  • 72199: CodeGen should respect the DontApplyCodeGen flag set directly on the RODL entity level
  • 72194: WSDL Import fails if the provided WSDL contains non-SOAP bindings (like HTTP)
  • 72109: RON: JSON RPC Content Type HTTP-Header Field
  • 72042: RO/.NET CodeGen: Generated Activator class cannot be compiled if VB.NET is used
  • 71845: Add timeout support to the SingletonClassFactory
  • 71704: Update service invoker so it won't rely on reflection to call service methods - tests update
  • 71502: Trial and Full installers should deploy the same assemblies
  • 71321: Drop VS 2008 and VS 2010 support from DA and RO SDK installer scripts
  • 65591: Service Tester crashes on Enum