HTML Operation Support Portal Compilation and Usage

Hi @all,

I tried to install and use the new operation portal from version 8 and I´m failing to get it to run.

I installed the api server. Setup runs fine.

If I browse the webpage of the api server a blank page is displayed.

After that I set the HTML compile base configuration parameter in designer.

First compile did not work at all.

I found by searching logfiles that npm just ignores every proxy which is configured and needs a own one.

So I set the proxy

cd C:\ProgramData\nodejs\node-v8.11.3-win-x64
npm config set proxy [myProxy]
npm config set proxy [myProxy] -g
npm config set https-proxy [myProxy]
npm config set https-proxy [myProxy] -g

After that compile at least is running, but takes about 20 to 30 minutes to finish.

If I go to the api page again, a white page is still displayed.

How to get this page to run?

Why is compiling this taking half an hour?

Parents
  • Got it.

    Proxy was one thing. 

    The other problem was that the html application only uses the first dll version which it finds.

    I´ve got Newtonsoft Json in 4 versions present in subdirectories (deployed by automatic software update from the database).

    The project took the first on in version 6, which had the effect of MethodNotFound on a complete diffrent location. (see below)

    After deleting the older versions of newtonsoft,json the start page is showing.

    2020-05-08 10:30:15.2596 ERROR (    WebLog ) : System.Exception: Unhandled exception occurred on URL /ApiServer ---> System.TypeInitializationException: The type initializer for 'QBM.CompositionApi.ApiManager.JsonResponseBuilder' threw an exception. ---> System.MissingMethodException: Method not found: 'Void System.Net.Http.Formatting.BaseJsonMediaTypeFormatter.set_SerializerSettings(Newtonsoft.Json.JsonSerializerSettings)'.

       at QBM.CompositionApi.ApiManager.JsonResponseBuilder..cctor()

       --- End of inner exception stack trace ---

       at QBM.CompositionApi.Definition.ExtensionMethods.HandleGet[T](IMethod method, Func`3 taskFactory)

       at QBM.CompositionApi.QBM_ApiServer_Config.Build(IApiBuilder builder)

       at QBM.CompositionApi.Definition.MethodSet.Configure(IResolve resolver, IEnumerable`1 providers)

       at QBM.CompositionApi.QBM_ApiServerAdmin..ctor(IResolve resolver)

       at QBM.CompositionApi.MethodSetProvider.GetMethodSetsAsync(CancellationToken ct)

       at QBM.CompositionApi.ApiManager.DbMethodProvider.<GetBranchedMethodSetsAsync>d__11.MoveNext()

  • Hello Martin,

    The presence of 4 different versions of Newtonsoft.Json.dll is most likely incorrect. I see just two versions in a default 8.1.2 installation:

    Path                     Version
    Newtonsoft.Json.dll    11.0.2.21924
    Newtonsoft.Json\12.0\Newtonsoft.Json.dll    12.0.3.23909

    Regarding compilation times, npm/Angular compilation does take its time but it should not take that long. Here are two points to consider:
    - Does a second compilation take less time? The first compilation fills a local cache.
    - Are you hitting an I/O bottleneck? npm processes a large number of small files. I/O performance is a huge factor here.

    Hanno

  • thank you for your answer.

    The other versions of Newtonsoft were from me, because I needed a newer newtonsoft version in idm 7.x for communication with a rest api with token. In the previous versions the updated version was not enough and the old version had to been there in parallel. The new dim version 8.x does not like this, but because the newtonsoft version is now new enough, my custom version could be removed.

    The IO bottleneck is possible. 

    But the duration for compiling seems t be always the same.

    The problem with this is, if I want to develop in idm, 10 minutes compilation time is already too long. How to test new processes and scripts if every test run needs about 1/4 hour.

    For the customization of idm I have to deactivate this feature at all.

Reply
  • thank you for your answer.

    The other versions of Newtonsoft were from me, because I needed a newer newtonsoft version in idm 7.x for communication with a rest api with token. In the previous versions the updated version was not enough and the old version had to been there in parallel. The new dim version 8.x does not like this, but because the newtonsoft version is now new enough, my custom version could be removed.

    The IO bottleneck is possible. 

    But the duration for compiling seems t be always the same.

    The problem with this is, if I want to develop in idm, 10 minutes compilation time is already too long. How to test new processes and scripts if every test run needs about 1/4 hour.

    For the customization of idm I have to deactivate this feature at all.

Children
No Data