I created workspace, store and layer in Geoserver. Data source is SQL Server 2012. When I connected Geoserver WFS to QGIS, it worked. But when I tried to save changes to layer, it crashed with error "Can't commit changes" (something like that). I removed legend entry from QGIS, and tried to connect QGIS again, but now it is showing error the layer 'xxxxxx' is not a valid layer and can not be added to the map. After recreating all on the Geoserver (workspace, store and layer), even with creating new database on MSSQL and pointing to it, it keeps showing me the same error. What is going on?
For debugging going to Menu -> View -> Panels -> Log Messages Panel worked for me. In the error log panel showing up, go to WFS-Tab and check for any error messages. It's not very verbose but could lead to the right track.
In my case, this helped to find out, that the DescribeFeatureType url in the GetFeature-XML was wrong, so this request failed.