@Override
 public void start(WSDLGenExtnContext ctxt) {
   WSBinding binding = ctxt.getBinding();
   TypedXmlWriter root = ctxt.getRoot();
   enabled = binding.isFeatureEnabled(AddressingFeature.class);
   if (!enabled) return;
   AddressingFeature ftr = binding.getFeature(AddressingFeature.class);
   required = ftr.isRequired();
   root._namespace(AddressingVersion.W3C.wsdlNsUri, AddressingVersion.W3C.getWsdlPrefix());
 }
 @Override
 public void addBindingExtension(TypedXmlWriter binding) {
   if (!enabled) return;
   UsingAddressing ua =
       binding._element(AddressingVersion.W3C.wsdlExtensionTag, UsingAddressing.class);
   /*
   Do not generate wsdl:required=true
   if(required) {
       ua.required(true);
   }
   */
 }
 private void addAttribute(TypedXmlWriter writer, String attrValue) {
   writer._attribute(AddressingVersion.W3C.wsdlActionTag, attrValue);
 }