Hi,
I had this error sometime ago, an old FME talk post helped me.
Basically I had an oracle_type attribute, which was confusing the oracle writer.
The solution was to remove (AttributeRemover) any oracle_type attributes before writing.
Hope this helps,
Itay
Thanks Itay for the pointer. However my workbench does not have any oracle_type attributes. I believe here the issue is something different.
Ananda
Did you get an answer to this problem? Here's a solution from Robyn Rennie at Safe for a similar problem that I had, using a feature merger with an Oracle Spatial feature source as Requestor and Oracle non Spatial as Supplier:
The problem is that you have read from a non-spatial oracle table so the features coming in through the second FeatureMerger have an attribute oracle_type on them which has a value of oracle_nil. Meaning that they are handled as non-spatial features. Then the Oracle Spatial Object writer attempts to write them and fails because of this attribute.
Solution
If you add an AttributeExpressionRemover or BulkAttriibuteRemove with a value of oracle_* in it, it will remove all the incoming oracle_ format attributes and now the Oracle Spatial Object writer will use the fme_geometry and write polygons.
Alternate Solution
This means that you will have to add the AttributeExpressionRemover to every non-spatial SUPPLIER in a feature merger. If you have a lot of feature merges and don’t want to do this every time, an alternative is to use the GeometryExtractor to store your geometry in text or binary format, and then use the GeometryReplacer to restore the geometry after all of your feature merges.
For complete documentation:
We had the same problem, and we could fix this by orienting the geometry in the right way (which is the left way).
Oracle expects geometry with a left-handed orientation, if your geometry is right-handed, Oracle can't encode it to its own geometry representation. Fix this with the "Orienter" transformer.
For complete documentation:
We had the same problem, and we could fix this by orienting the geometry in the right way (which is the left way).
Oracle expects geometry with a left-handed orientation, if your geometry is right-handed, Oracle can't encode it to its own geometry representation. Fix this with the "Orienter" transformer.
Thanks @oscarwillems I had the same issue and the Orienter is a good solution. I didn't know about Oracle expecting left-handed geometries. Not easy to find the information in the documentation of SDO_GEOMETRY https://docs.oracle.com/database/121/SPATL/sdo_geometry-object-type.htm#SPATL494