pdf library c# : Extract data from pdf file software application cloud windows winforms html class PDF-Converter-Services---User-Guide-(1)8-part1802

PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 81 of 124 
4.12  Controlling which InfoPath views to Export to PDF 
Being able to select which views to export is very useful as quite often different 
views are used for exporting a form to PDF. Sometimes using the Print View is 
good enough, but other times you need to export a different view or multiple 
views to PDF format. There are even  occasions  where  different  views  are 
exported depending on the state of the data entered in the form. 
As always, the best way to illustrate this is by example. The latest version of 
this tutorial is available on the Muhimbi Blog at the following URL: 
http://blog.muhimbi.com/2010/08/controlling-which-views-to-export-to.html
4.12.1  Use a special view for exporting to PDF 
In this scenario we have an Employee Review form with the following 3 views: 
1. Data entry view: A view used for populating data using the InfoPath client 
or Forms Services. This is the default view. 
2. Print View: A special view that is optimised for printing to a network laser 
printer. This is specified as View 1’s Print View.
3. PDF Export view: A separate view that is used to export the InfoPath form 
to PDF format as it contains some information that should only show up in 
exported PDF files. 
As View 1 is the default view and View 2 is the Print View for View 1, under 
normal circumstance the 2nd view is used for exporting to PDF. However, we 
want to use View 3 for this purpose. We can achieve this by starting the name 
of View 3 with “_MuhimbiView”. The Muhimbi PDF Converter will automatically 
detect all views that start  with this name, export them all and  merge  them 
together into a single PDF file. Naturally these views can be hidden from the 
end user by marking them as such. 
This  is  a  great  solution  if  you  know  beforehand  that  you  will  always  be 
exporting the same view(s) to PDF format. 
Extract data from pdf file - extract form data from PDF in C#.net, ASP.NET, MVC, Ajax, WPF
Help to Read and Extract Field Data from PDF with a Convenient C# Solution
make pdf form editable in reader; export pdf data to excel
Extract data from pdf file - VB.NET PDF Form Data Read library: extract form data from PDF in vb.net, ASP.NET, MVC, Ajax, WPF
Convenient VB.NET Solution to Read and Extract Field Data from PDF
how to extract data from pdf file using java; pdf data extraction open source
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 82 of 124 
4.12.2  Determine at runtime which views to export 
The previous solution, using view names that start with “_MuhimbiView”, works 
great. However, sometimes you need to export a different view depending on 
the state of the data. 
For example, our Expense Claim form consists of the following Views: 
1. Data Entry View 1: Used by the employee to report expenses. 
2. Data Entry View 2: Used by the manager to add comments and additional 
information. 
3. PDF Export View 1: The view that is used to export the form to PDF format 
before the manager has reviewed the form. 
4. PDF Export View 2: The view that is used to export the form to PDF format 
after the manager has reviewed the form. 
We can implement this by adding a (hidden) text box named “_MuhimbiViews” 
(case sensitive 
and using the default ‘my’ namespace
) to any of the views 
and populating it with the name of one or more comma separated view names. 
The Muhimbi PDF Converter will automatically pick up these names and export 
them to PDF format. If multiple views are specified then they are automatically 
concatenated together. 
In  addition  to  adding  the  “_MuhimbiViews”  text  field  to  the  form,  all  the 
developer of the form needs to do is add a little bit of logic to the Submit event 
to specify in the “_MuhimbiViews” field which view name(s) to export.
4.12.3  View prioritisation rules 
To determine which view or views to export, the Muhimbi PDF Converter uses 
the following prioritisation rules: 
1.  When using the web services interface, any ConversionViews specified in 
the ConverterSpecificSettings property will be converted. If this property is 
not set then the following rules will be used to determine which views to 
convert to PDF. 
2. 
If a field named “_MuhimbiViews” is found anywhere in the InfoPath form 
then the content of this field is used to determine which views to export. 
3.  If the previous field does not exist, is empty or the specified view name 
does not exist then the converter looks at all view names that start with 
“_MuhimbiView”.
4.  If none of the previous options apply then the view marked as the Default 
View is exported. 
Regardless of how a view or views are selected for export, if the selected view 
has a Print View specified than that view is given priority. 
Do not use Muhimbi’s View selection features in combination with InfoPath's 
'Print multiple views' facility. The latter is given priority when converting to PDF. 
When the final PDF file is assembled then all selected views are included first, 
followed by any converted attachments
C# PDF Text Extract Library: extract text content from PDF file in
Able to extract and get all and partial text content from PDF file. How to C#: Extract Text Content from PDF File. Add necessary references:
pdf data extractor; pdf form save with reader
VB.NET PDF Text Extract Library: extract text content from PDF
Extract and get partial and all text content from PDF file. Extract highlighted text out of PDF document. Extract Text Content from PDF File in VB.NET.
how to save a filled out pdf form in reader; pdf data extraction to excel
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 83 of 124 
 Working with watermarks 
As  described  in  chapter  3.5 Watermarking,  the  PDF  Conversion  Service 
contains a powerful watermarking engine that can be used to add visible and 
invisible watermarks to pages as well as adding headers, footers and other 
recurring items. 
5.1  Watermarking in .NET 
The  following  C#  example  shows  how  to  decorate  a  document  with  the 
following watermarks: 
1.  T
he word ‘Confidential’ 
in the background of the cover page. 
2.  Page numbers in the right-hand side of the footer on all even pages. 
3.  Page numbers in the left-hand side of the footer on all odd pages. 
The sample code expects the path of the PDF file on the command line. If the 
path is omitted then the first MS-Word file found in the current directory will be 
used. 
Follow  the  steps  described  below  to  create  the  sample  watermarking 
application. 
1.  Create a new Visual Studio C# Console application named Watermarking
2.  Add  a Service Reference  to  the  following  URL  and  specify 
ConversionService as the namespace 
http://localhost:41734/Muhimbi.DocumentConverter.WebService/?wsdl 
3.  Paste the following code into Program.cs. Note that this code is practically 
identical to the sample provided in a previous chapter, with the exception of 
the CreateWatermarks method and the line that assigns the watermarks to 
the ConversionSettings object. 
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
External cross references. Private data of other applications. Flatten visible layers. VB.NET Demo Code to Optimize An Exist PDF File in Visual C#.NET Project.
can reader edit pdf forms; sign pdf form reader
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
Microsoft Office Word, Excel and PowerPoint data to PDF form. Merge PDF with byte array, fields. Merge PDF without size limitation. Append one PDF file to the end
export excel to pdf form; pdf form field recognition
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 84 of 124 
using System; 
using System.Collections.Generic; 
using System.Diagnostics; 
using System.IO; 
using System.ServiceModel; 
using Watermarking.ConversionService; 
namespace Watermarking 
class Program 
// ** The URL where the Web Service is located. Amend host name if needed. 
static string SERVICE_URL = "http://localhost:41734/Muhimbi.DocumentConverter.WebService/"; 
static void Main(string[] args) 
DocumentConverterServiceClient client = null; 
try 
// ** Determine the source file and read it into a byte array. 
string sourceFileName = null; 
if (args.Length == 0) 
string[] sourceFiles = Directory.GetFiles( 
Directory.GetCurrentDirectory(), "*.doc"); 
if (sourceFiles.Length > 0) 
sourceFileName = sourceFiles[0]; 
else 
Console.WriteLine("Please specify a document to convert and watermark."); 
Console.ReadKey(); 
return; 
else 
sourceFileName = args[0]; 
byte[] sourceFile = File.ReadAllBytes(sourceFileName); 
// ** Open the service and configure the bindings 
client = OpenService(SERVICE_URL); 
//** Set the absolute minimum open options 
OpenOptions openOptions = new OpenOptions(); 
openOptions.OriginalFileName = Path.GetFileName(sourceFileName); 
openOptions.FileExtension = Path.GetExtension(sourceFileName); 
// ** Set the absolute minimum conversion settings. 
ConversionSettings conversionSettings = new ConversionSettings(); 
conversionSettings.Fidelity = ConversionFidelities.Full; 
conversionSettings.Quality = ConversionQuality.OptimizeForPrint; 
// ** Get the list of watermarks to apply. 
conversionSettings.Watermarks = CreateWatermarks(); 
// ** Carry out the conversion. 
Console.WriteLine("Converting file " + sourceFileName); 
byte[] convFile = client.Convert(sourceFile, openOptions, conversionSettings); 
// ** Write the converted file back to the file system with a PDF extension. 
string destinationFileName Path.GetDirectoryName(sourceFileName) + @"\" + 
Path.GetFileNameWithoutExtension(sourceFileName) + 
"." + conversionSettings.Format; 
using (FileStream fs = File.Create(destinationFileName)) 
fs.Write(convFile, 0, convFile.Length); 
fs.Close(); 
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
Merge Microsoft Office Word, Excel and PowerPoint data to PDF form. Append one PDF file to the end of another and save to a single PDF file.
change font size pdf form reader; extract pdf form data to xml
C# PDF File Compress Library: Compress reduce PDF size in C#.net
All object data. File attachment. External cross references. Private data of other applications. Flatten visible layers. C#.NET DLLs: Compress PDF Document.
cannot save pdf form in reader; exporting pdf form to excel
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 85 of 124 
Console.WriteLine("File converted to " + destinationFileName); 
// ** Open the generated PDF file in a PDF Reader 
Process.Start(destinationFileName); 
catch (FaultException<WebServiceFaultException> ex) 
Console.WriteLine("FaultException occurred: ExceptionType: " + 
ex.Detail.ExceptionType.ToString()); 
catch (Exception ex) 
Console.WriteLine(ex.ToString()); 
finally 
CloseService(client); 
Console.ReadKey(); 
/// <summary> 
/// Create the watermarks. 
/// </summary> 
/// <returns>An array of watermarks to apply</returns> 
public static Watermark[] CreateWatermarks() 
List<Watermark> watermarks = new List<Watermark>(); 
// ** Specify the default settings for properties 
Defaults wmDefaults = new Defaults(); 
wmDefaults.FillColor = "#000000"
wmDefaults.LineColor = "#000000"
wmDefaults.FontFamilyName = "Arial"
wmDefaults.FontSize = "10"
// **************** 'Confidential' Text *************** 
// ** 'Confidential' watermark for front page 
Watermark confidential = new Watermark(); 
confidential.Defaults = wmDefaults; 
confidential.StartPage = 1
confidential.EndPage = 1
confidential.Rotation = "-45"
confidential.Width = "500"
confidential.Height = "500"
confidential.HPosition = HPosition.Center; 
confidential.VPosition = VPosition.Middle; 
confidential.ZOrder = -1
// ** Create a new Text element that goes inside the watermark 
Text cfText = new Text(); 
cfText.Content = "Confidential"
cfText.FontSize = "40"
cfText.Width = "500"; 
cfText.Height = "500"
cfText.Transparency = "0.10"
// ** And add it to the list of watermark elements. 
confidential.Elements = new Element[] { cfText }; 
// ** And add the watermark to the list of watermarks 
watermarks.Add(confidential); 
// **************** Watermark for Odd pages *************** 
Watermark oddPages = new Watermark(); 
oddPages.Defaults = wmDefaults; 
oddPages.StartPage = 3
oddPages.PageInterval = 2
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
By using RsterEdge XDoc PDF SDK for .NET, VB.NET users are able to extract image from PDF page or file and specified region on PDF page, then get image
how to fill in a pdf form in reader; how to save editable pdf form in reader
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
Page, a Region on a Page, and PDF Document. C#.NET extract image from multiple page adobe PDF file library for Visual Studio .NET.
c# read pdf form fields; extracting data from pdf into excel
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 86 of 124 
oddPages.Width = "600"
oddPages.Height = "50"
oddPages.HPosition = HPosition.Right; 
oddPages.VPosition = VPosition.Bottom; 
// ** Add a horizontal line 
Line line = new Line(); 
line.X = "1"
line.Y = "1"
line.EndX = "600"
line.EndY = "1"
line.Width = "5"
// ** Add a page counter 
Text oddText = new Text(); 
oddText.Content = "Page: {PAGE} of {NUMPAGES}"
oddText.Width = "100"
oddText.Height = "20"
oddText.X = "475"
oddText.Y = "15"
oddText.LineWidth = "-1"
oddText.FontStyle = FontStyle.Regular; 
oddText.HAlign = HAlign.Right; 
// ** And add it to the list of watermark elements 
oddPages.Elements = new Element[] { line, oddText }; 
// ** And add the watermark to the list of watermarks 
watermarks.Add(oddPages); 
// **************** Watermark for Even pages *************** 
Watermark evenPages = new Watermark(); 
evenPages.Defaults = wmDefaults; 
evenPages.StartPage = 2
evenPages.PageInterval = 2
evenPages.Width = "600"
evenPages.Height = "50"
evenPages.HPosition = HPosition.Left; 
evenPages.VPosition = VPosition.Bottom; 
// ** No need to create an additional line,re-use the previous one 
// ** Add a page counter 
Text evenText = new Text(); 
evenText.Content = "Page: {PAGE} of {NUMPAGES}"
evenText.Width = "100"
evenText.Height = "20"
evenText.X = "25"
evenText.Y = "15"
evenText.LineWidth = "-1"
evenText.FontStyle = FontStyle.Regular; 
evenText.HAlign = HAlign.Left; 
// ** And add it to the list of watermark elements 
evenPages.Elements = new Element[] { line, evenText }; 
// ** And add the watermark to the list of watermarks 
watermarks.Add(evenPages); 
return watermarks.ToArray(); 
/// <summary> 
/// Configure the Bindings, endpoints and open the service using the specified address. 
/// </summary> 
/// <returns>An instance of the Web Service.</returns> 
public static DocumentConverterServiceClient OpenService(string address) 
DocumentConverterServiceClient client = null; 
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 87 of 124 
try 
BasicHttpBinding binding = new BasicHttpBinding(); 
// ** Use standard Windows Security. 
binding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly; 
binding.Security.Transport.ClientCredentialType = 
HttpClientCredentialType.Windows; 
// ** Increase the client Timeout to deal with (very) long running requests. 
binding.SendTimeout = TimeSpan.FromMinutes(30); 
binding.ReceiveTimeout = TimeSpan.FromMinutes(30); 
// ** Set the maximum document size to 50MB 
binding.MaxReceivedMessageSize = 50 * 1024 * 1024
binding.ReaderQuotas.MaxArrayLength = 50 * 1024 * 1024
binding.ReaderQuotas.MaxStringContentLength = 50 * 1024 * 1024
// ** Specify an identity (any identity) in order to get it past .net3.5 sp1 
EndpointIdentity epi = EndpointIdentity.CreateUpnIdentity("unknown"); 
EndpointAddress epa = new EndpointAddress(new Uri(address), epi); 
client = new DocumentConverterServiceClient(binding, epa); 
client.Open(); 
return client; 
catch (Exception) 
CloseService(client); 
throw; 
/// <summary> 
/// Check if the client is open and then close it. 
/// </summary> 
/// <param name="client">The client to close</param> 
public static void CloseService(DocumentConverterServiceClient client) 
if (client != null && client.State == CommunicationState.Opened) 
client.Close(); 
4.  Make sure the output folder contains an MS-Word file. 
5.  Compile and execute the application. 
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 88 of 124 
5.2  Watermarking in Java 
The following Java based sample code is identical to the example provided in 
section  4.2  with  the  exception  that  the Watermarks  property  in  the 
ConversionSettings class is now populated with a simple watermark that prints 
the word ‘Confidential’ on the front page in combination with the current date.
For  details on how  to setup your Java environment and  generate  the Web 
Service proxies see the before mentioned section 4.2 
package com.muhimbi.app; 
import com.muhimbi.ws.*; 
import java.io.*; 
import java.net.URL; 
import java.util.List; 
import javax.xml.bind.JAXBElement; 
import javax.xml.namespace.QName; 
public class WsClient { 
private final static String DOCUMENTCONVERTERSERVICE_WSDL_LOCATION =  
"http://localhost:41734/Muhimbi.DocumentConverter.WebService/?wsdl"; 
public static void main(String[] args) { 
try { 
if (args.length != 1) { 
System.out.println("Please specify a single file name on the command line."); 
else 
// ** Process command line parameters 
String sourceDocumentPath = args[0]; 
File file = new File(sourceDocumentPath); 
String fileName = getFileName(file); 
String fileExt = getFileExtension(file); 
System.out.println("Converting file " + sourceDocumentPath); 
// ** Initialise Web Service 
DocumentConverterService_Service dcss = new DocumentConverterService_Service( 
new URL(DOCUMENTCONVERTERSERVICE_WSDL_LOCATION),  
new QName("http://tempuri.org/""DocumentConverterService")); 
DocumentConverterService dcs = dcss.getBasicHttpBindingDocumentConverterService(); 
// ** Only call conversion if file extension is supported 
if (isFileExtensionSupported(fileExt, dcs)) { 
// ** Read source file from disk 
byte[] fileContent = readFile(sourceDocumentPath); 
// ** Converting the file 
OpenOptions openOptions = getOpenOptions(fileName, fileExt); 
ConversionSettings conversionSettings = getConversionSettings(); 
byte[] convertedFile = dcs.convert(fileContent, openOptions, conversionSettings); 
// ** Writing converted file to file system 
String destinationDocumentPath = getPDFDocumentPath(file); 
writeFile(convertedFile, destinationDocumentPath); 
System.out.println("File converted sucessfully to " + destinationDocumentPath); 
else 
System.out.println("The file extension is not supported."); 
catch (IOException e) { 
System.out.println(e.getMessage()); 
catch (DocumentConverterServiceGetConfigurationWebServiceFaultExceptionFaultFaultMessage e){ 
printException(e.getFaultInfo()); 
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 89 of 124 
catch (DocumentConverterServiceConvertWebServiceFaultExceptionFaultFaultMessage e) { 
printException(e.getFaultInfo()); 
public static OpenOptions getOpenOptions(String fileName, String fileExtension) { 
ObjectFactory objectFactory = new ObjectFactory(); 
OpenOptions openOptions = new OpenOptions(); 
// ** Set the minimum required open options. Additional options are available 
openOptions.setOriginalFileName(objectFactory.createOpenOptionsOriginalFileName(fileName)); 
openOptions.setFileExtension(objectFactory.createOpenOptionsFileExtension(fileExtension)); 
return openOptions; 
public static ConversionSettings getConversionSettings() { 
ConversionSettings conversionSettings = new ConversionSettings(); 
// ** Set the minimum required conversion settings. Additional settings are available 
conversionSettings.setQuality(ConversionQuality.OPTIMIZE_FOR_PRINT); 
conversionSettings.setRange(ConversionRange.ALL_DOCUMENTS); 
conversionSettings.getFidelity().add("Full"); 
conversionSettings.setFormat(OutputFormat.PDF); 
conversionSettings.setWatermarks(getWatermarks()); 
return conversionSettings; 
public static JAXBElement<ArrayOfWatermark> getWatermarks() 
ObjectFactory objectFactory = new ObjectFactory(); 
ArrayOfWatermark watermarks = new ArrayOfWatermark(); 
// ** Specify some of the default settings for properties 
Defaults wmDefaults = new Defaults(); 
wmDefaults.setFillColor(objectFactory.createDefaultsFillColor("#FF0000")); 
wmDefaults.setFontFamilyName(objectFactory.createDefaultsFontFamilyName("Arial")); 
// ** 'Confidential' watermark for front page 
Watermark confidential = new Watermark(); 
confidential.setDefaults(objectFactory.createContainerDefaults(wmDefaults)); 
confidential.setStartPage(1); 
confidential.setEndPage(1); 
confidential.setRotation(objectFactory.createElementRotation("-15")); 
confidential.setWidth(objectFactory.createElementWidth("500")); 
confidential.setHeight(objectFactory.createElementHeight("250")); 
confidential.setHPosition(HPosition.CENTER); 
confidential.setVPosition(VPosition.ABSOLUTE); 
confidential.setY(objectFactory.createElementY("275")); 
confidential.setZOrder(-1); 
// ** Create a new Text element that goes inside the watermark 
Text cfText = new Text(); 
cfText.setContent(objectFactory.createTextContent("Confidential - {DATE}")); 
cfText.setFontSize(objectFactory.createTextFontSize("40")); 
cfText.getFontStyle().add("Bold"); 
cfText.getFontStyle().add("Italic"); 
cfText.setWidth(objectFactory.createElementWidth("500")); 
cfText.setHeight(objectFactory.createElementHeight("250")); 
cfText.setTransparency(objectFactory.createElementTransparency("0.10")); 
// ** And add it to the list of watermark elements. 
ArrayOfElement cfElements = new ArrayOfElement(); 
cfElements.getElement().add(cfText); 
confidential.setElements(objectFactory.createContainerElements(cfElements)); 
// ** And add the watermark to the list of watermarks 
watermarks.getWatermark().add(confidential); 
return objectFactory.createConversionSettingsWatermarks(watermarks); 
public static String getFileName(File file) { 
String fileName = file.getName(); 
PDF Converter Services - User & Developer Guide
PDF Converter Services - User & Developer Guide - Version 8.0 - 07/12/15 
© Copyright 2015, Muhimbi Ltd 
Page 90 of 124 
return fileName.substring(0, fileName.lastIndexOf('.')); 
public static String getFileExtension(File file) { 
String fileName = file.getName(); 
return fileName.substring(fileName.lastIndexOf('.') + 1, fileName.length()); 
public static String getPDFDocumentPath(File file) { 
String fileName = getFileName(file); 
String folder = file.getParent(); 
if (folder == null) { 
folder = new File(file.getAbsolutePath()).getParent(); 
return folder + File.separatorChar + fileName + '.' + OutputFormat.PDF.value(); 
public static byte[] readFile(String filepath) throws IOException { 
File file = new File(filepath); 
InputStream is = new FileInputStream(file); 
long length = file.length(); 
byte[] bytes = new byte[(int) length]; 
int offset = 0; 
int numRead; 
while (offset < bytes.length 
&& (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) { 
offset += numRead; 
if (offset < bytes.length) { 
throw new IOException("Could not completely read file " + file.getName()); 
is.close(); 
return bytes; 
public static void writeFile(byte[] fileContent, String filepath) throws IOException { 
OutputStream os = new FileOutputStream(filepath); 
os.write(fileContent); 
os.close(); 
public static boolean isFileExtensionSupported(String extension, DocumentConverterService dcs) 
throws DocumentConverterServiceGetConfigurationWebServiceFaultExceptionFaultFaultMessage  
Configuration configuration = dcs.getConfiguration(); 
final JAXBElement<ArrayOfConverterConfiguration> converters = configuration 
.getConverters(); 
final ArrayOfConverterConfiguration ofConverterConfiguration = converters.getValue(); 
final List<ConverterConfiguration> cList = ofConverterConfiguration 
.getConverterConfiguration(); 
for (ConverterConfiguration cc : cList) { 
final List<String> supportedExtension = cc.getSupportedFileExtensions() 
.getValue().getString(); 
if (supportedExtension.contains(extension)) { 
return true; 
return false; 
public static void printException(WebServiceFaultException serviceFaultException) { 
System.out.println(serviceFaultException.getExceptionType()); 
JAXBElement<ArrayOfstring> element = serviceFaultException.getExceptionDetails(); 
ArrayOfstring value = element.getValue(); 
for (String msg : value.getString()) { 
System.out.println(msg); 
Documents you may be interested
Documents you may be interested