I did a bit of mucking about with uDig and Oracle to find out what uDig is writing that is causing the mismatch in SRIDs.
I ascertained this:
1. You are doing an UPDATE using the primary key OID attribute (fine).
2. The geometry you are writing does not honor the SDO_SRID value in the original geometry replacing it with NULL.
What I did was
a. let uDig get the data it needed into memory.
b. Selected and editing my feature.
c. Went in to Oracle and killed the spatial index.
d. Pressed commit in uDig (the data is committed but, of course, the refresh of the display does not because there is not spatial index).
e. Checked what was committed:
from parcel_drawing a
group by a.geom.sdo_srid;
f. manually updated the NULL SDO_SRID value;
g. Rebuilt the spatial index
h. Refreshed uDig --> Bingo. The edit is there.
So, it looks like when you are updating an existing shape the code seems to NULL out the existing value.
Conclusion: don't edit Oracle Spatial data until a patch/fix is made available!