jolie Unsupported communication medium: null -


i have problem jolie embedded ol , recursive. in example there calcultator.ol receive messagge "fibonacci" .. request dispatched fibonacci.ol embedded in calcolator.ol. first invoke ok .. next invocation (recursive in fibonacci.ol) fails messagge:

informazioni: [fibonacci.ol] jolie.net.unsupportedcommmediumexception: unsupported communication medium: null @ jolie.net.commcore.createcommchannel(commcore.java:311) @ jolie.net.ports.outputport.getcommchannel(outputport.java:240) @ jolie.net.ports.outputport.getcommchannel(outputport.java:310) @ jolie.process.solicitresponseprocess.run(solicitresponseprocess.java:122) @ jolie.runtime.parallelexecution$parallelthread.runprocess(parallelexecution.java:44) @ jolie.executionthread.run(executionthread.java:469) @ java.util.concurrent.executors$runnableadapter.call(unknown source) @ java.util.concurrent.futuretask.run(unknown source) @ java.util.concurrent.threadpoolexecutor.runworker(unknown source) @ java.util.concurrent.threadpoolexecutor$worker.run(unknown source) @ java.lang.thread.run(unknown source)"

this code of calculator.ol:

include "runtime.iol" include "console.iol" include "operationinterface.iol" include "calculatorinterface.iol"  execution{ concurrent }  interface fibonacciinterface  {   requestresponse: fibonacci( int )( int ) } outputport fibonacciservice  {   location: "local"   interfaces: fibonacciinterface } embedded  {     jolie: "fibonacci.ol" in fibonacciservice }  inputport calculator {   location: "socket://localhost:8001"   protocol: http   interfaces: calculatorinterface }  main  {   [ fibonacci()( response )    {       __op = "fibonacci";       println@console("operation:" + __op)();       fibonacci@fibonacciservice(10)( response )   }] } 

and code of fibonacci.ol

include "console.iol" include "runtime.iol"  execution{ concurrent }  interface fibonacciinterface {    requestresponse:      fibonacci( int )( int ) }  outputport myself {    interfaces: fibonacciinterface  }  inputport fibonacciservice {    location: "local"    interfaces: fibonacciinterface }  main {    fibonacci( n )( response ) {      if ( n < 2 ) {        response = n      } else {        {  fibonacci@myself( n - 1 )( resp1 )  |  fibonacci@myself( n - 2 )( resp2 )        };        response = resp1 + resp2      }    } } 


Comments

Popular posts from this blog

python - Selenium remoteWebDriver (& SauceLabs) Firefox moseMoveTo action exception -

html - How to custom Bootstrap grid height? -

transpose - Maple isnt executing function but prints function term -