");
// writer.println("");
//
// writer.println("");
//
// }
public static String renderRequiredKeysJavaScript(
SignatureObject signature_object, String name_prefix)
{
StringWriter sw = new StringWriter();
PrintWriter writer = new PrintWriter(sw);
String[] rkeys = SignatureTypes.REQUIRED_SIG_KEYS;
for (int key_idx = 0; key_idx < rkeys.length; key_idx++)
{
String key = rkeys[key_idx];
SignatureEntry entry = signature_object.getSigEntry(key);
String value = entry.getValue();
if (SignatureTypes.SIG_ID.equals(key) && value == null)
{
continue;
}
if (SignatureTypes.SIG_KZ.equals(key) && value == null)
{
continue;
}
value = value.replaceAll("\\s", " ");
value = value.replaceAll("\\\"", "\\\"");
String input_key = name_prefix + key;
writer.println(" document.submitform." + input_key + ".value = \"" + value + "\";");
}
return sw.toString();
}
public static String renderRequiredKeys(SignatureObject signature_object,
String name_prefix, boolean write_value)
{
StringWriter sw = new StringWriter();
PrintWriter writer = new PrintWriter(sw);
writer.println("
");
String[] rkeys = SignatureTypes.REQUIRED_SIG_KEYS;
for (int key_idx = 0; key_idx < rkeys.length; key_idx++)
{
String key = rkeys[key_idx];
SignatureEntry entry = signature_object.getSigEntry(key);
String caption = entry.getCaption();
String value = entry.getValue();
if (SignatureTypes.SIG_ID.equals(key) && value == null)
{
continue;
}
if (SignatureTypes.SIG_KZ.equals(key) && value == null)
{
continue;
}
writer.println("
");
writer.println("
" + caption + ":
");
writer.println("
");
value = value.replaceAll("\\s", " ");
value = value.replaceAll("\\\"", "\\\"");
String input_key = name_prefix + key;
writer.println(" ");
writer.println("
");
writer.println("
");
}
writer.println("
");
return sw.toString();
}
public static String renderRequiredKeysText(SignatureObject signature_object)
{
StringWriter sw = new StringWriter();
PrintWriter writer = new PrintWriter(sw);
writer.println("
");
// just render useful information
// FIXME: NPE in case SignatureTypes.SIG_NAME is not used (in case of friendly signer name)
// Problem: SignatureTypes.SIG_NAME is defined as Signer-RFC2253Name, but there is not certain
// key for friendly name (e.g. SIG_SUBJECT or SIG_FOO), therefore we do not know which key contains
// the friendly signer name
// workaround: include "SIG_SUBJECT" since it is usually used
String[] rkeys = { SignatureTypes.SIG_NAME, "SIG_SUBJECT", SignatureTypes.SIG_DATE, SignatureTypes.SIG_ISSUER, SignatureTypes.SIG_NUMBER}; // SignatureTypes.REQUIRED_SIG_KEYS;
for (int key_idx = 0; key_idx < rkeys.length; key_idx++)
{
String key = rkeys[key_idx];
SignatureEntry entry = signature_object.getSigEntry(key);
if (entry == null) {
continue;
}
String caption = entry.getCaption();
String value = entry.getValue();
if (caption == null || value == null) {
continue;
}
// if (SignatureTypes.SIG_KZ.equals(key) && value == null)
// {
// continue;
// }
writer.println("
");
writer.println("
" + caption + ":
");
writer.println("
");
value = value.replaceAll("\\s", " ");
value = value.replaceAll("\\\"", "\\\"");
writer.println(" " + value);
writer.println("