title: SoapFault MustUnderstand headers, CXF WSS4J No crypto property file supplied
body: <p>My SOAP server is receiving a SOAP message with must understand headers set to 1.</p>
  <p><img src="https://i.stack.imgur.com/oFEV7.png" alt="MustUnderstand Headers" /></p>
  <p>In order to understand the header I am using a wss4j interceptor.</p>
  <p>My sign.properties file is:</p>
  <pre><code>org.apache.ws.security.crypto.provider=org.apache.wss4j.common.crypto.Merlin
  org.apache.ws.security.crypto.merlin.truststore.type=jks
  org.apache.ws.security.crypto.merlin.truststore.password=changeit    
  org.apache.ws.security.crypto.merlin.truststore.file=keystore/truststore.jks
  </code></pre>
  <p>My Endpoint xml:</p>
  <pre><code>    &lt;jaxws:inInterceptors&gt;
          &lt;bean class=&quot;org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor&quot;&gt;
              &lt;constructor-arg&gt;
                  &lt;map&gt;
                      &lt;entry key=&quot;action&quot; value=&quot;Timestamp Signature&quot;/&gt;
                      &lt;entry key=&quot;signaturePropFile&quot; value=&quot;XXXXXX/WEB-INF/classes/etc/sign.properties&quot;/&gt;
                      &lt;entry key=&quot;passwordCallbackClass&quot; value=&quot;XX.XX.XX.XXXXXX.lifecycleapp.UTPasswordCallback&quot;/&gt;
                  &lt;/map&gt;
              &lt;/constructor-arg&gt;
          &lt;/bean&gt;
      &lt;/jaxws:inInterceptors&gt;  
  </code></pre>
  <p>However I am getting the error &quot;org.apache.wss4j.common.ext.WSSecurityException: No crypto property file supplied to verify signature&quot;</p>
  <p><img src="https://i.stack.imgur.com/unRLp.png" alt="No crypto property file supplied to verify signature" /></p>
  <p>I am assuming it is something as simple as not correctly addressing the signaturePropFile but I have tried giving the full file path but that has returned the same result.</p>
  <p>Any help would be greatly appreciated.</p>