Skip to main content

Version information:

 

FME Desktop 2017.0.1.1 build 17291 win64

 

FME Server 2017.0.1.1 build 17291 win64

In FME Desktop I created a linked custom transformer with looping capabilities. I saved the custom transformer as a fmx file, installed the file and implemented the transformer in an existing workspace. .

After installation it was available in the workspace by searching for it on the canvas. When editing the transformer it opened correctly the right fmx file. That shows to me that linkage should be correct.

 

Running the workspace in FME Desktop gives proper results.

After that, I published the workspace to FME Server. During publishing, I selected the fmx file and picked as saving location the repository where the workspace would be saved. This is according to the steps in the FME Server documentation:

 

http://docs.safe.com/fme/html/FME_Server_Documentation/Content/AdminGuide/Sharing_FME_Engine_Resources.htm#Publish_with_Workspace

I ended up on the above webpage via https://knowledge.safe.com/articles/143/custom-transformers-and-fme-server.html

However, when I run the workspace in FME Server, I get an error message related to a factory that not has been recognized:

2017-11-01 16:45:55|  3.0|  0.0|ERROR |This FME edition does not recognize the `TransformFact:1:UnitConversionLoop' factory. Please ensure that the current platform supports this factory, the factory name is spelled correctly, and that you have installed all required plug-ins 2017-11-01 16:45:55|  3.0|  0.0|ERROR |(stftrans.cpp:293) - (simptran.cpp:652) - (pipeline.cpp:424) - (pipeline.cpp:551) - (creator3.cpp:868)

I also tried saving the fmx file during publishing to the shared resources folder Engine>Transformers. This does not work either.

Under all circumstances I used the same version (developing, installation, etc.)

Does anyone know how to solve this issue?

I solved the issue by removing the (FME Hub) Custom Transformer 'LengthUnitConverter' that was inside my Linked Custom Looping Transformer.

 

I first extracted all the individual transformers from the LengthUnitConverter transformer and put them inside my looping transformer. After that I created a new, blank custom transformer inside the workspace and pasted the content of my looping transformer inside that new custom transformer. Finally, I connected everything and saved the workspace. This resulted in no warnings about blocking transformers and the workspace could be saved successfully. After publishing to FME Server, the workspace worked like a charm.

 

 

Two points of interest after this situation:

 

1. Apparently adding an (FME Hub) custom transformer to a looping custom transformer, results in a warning that there are blocking transformers. I checked all the transformers, but no transformers with grouping functionality were present. It appears that for instance the custom transformer inside the looping transformer is seen as a kind of blocking entity.

 

2. Uploading a workspace with two layers of custom transformers in it (with one looping transformer, but maybe also with two 'normal' custom transformers) is causing errors in FME Server due to inconsistency in the factories.

 

 

Both situations could be worth investigating. I leave that up to them. Let me know if you want more information.

 

 


I solved the issue by removing the (FME Hub) Custom Transformer 'LengthUnitConverter' that was inside my Linked Custom Looping Transformer.

 

I first extracted all the individual transformers from the LengthUnitConverter transformer and put them inside my looping transformer. After that I created a new, blank custom transformer inside the workspace and pasted the content of my looping transformer inside that new custom transformer. Finally, I connected everything and saved the workspace. This resulted in no warnings about blocking transformers and the workspace could be saved successfully. After publishing to FME Server, the workspace worked like a charm.

 

 

Two points of interest after this situation:

 

1. Apparently adding an (FME Hub) custom transformer to a looping custom transformer, results in a warning that there are blocking transformers. I checked all the transformers, but no transformers with grouping functionality were present. It appears that for instance the custom transformer inside the looping transformer is seen as a kind of blocking entity.

 

2. Uploading a workspace with two layers of custom transformers in it (with one looping transformer, but maybe also with two 'normal' custom transformers) is causing errors in FME Server due to inconsistency in the factories.

 

 

Both situations could be worth investigating. I leave that up to Safe. Let me know if you want more information.

 


Reply