Monday, July 26, 2021

FileNet API: Get Participant Name by Wob Number

 String query1 = "F_WobNum = 0x"+wobNumb ;

String pname = null;

//Get FileNet Connection code here

if(vwRoster != null){

VWRosterQuery query2 = vwRoster.createQuery(null, null, null, VWRoster.QUERY_NO_OPTIONS, query1, null, VWFetchType.FETCH_TYPE_WORKOBJECT);

while(query.hasNext()){

VWWorkObject vwElement = (VWWorkObject)query.next();

VWParticipant[] vw = ( VWParticipant[])vwElement.getFieldValue("AssignedTo");

for (int vwp = 0; vwp < vw.length; vwp++)

{

pname = vw[0].getpname();

System.out.println("Participant Name "+vw[0].getpname());

}

}

}


How to Fix Certificate Errors in Apache HttpClient?

 Error: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Solution: We might be using HTTP Client...override ur client object with this method :

 try {
          TrustManager[] trustAllCerts = { new X509TrustManager() {
                public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {}
                
                public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {}
                
                public X509Certificate[] getAcceptedIssuers() {
                  return new X509Certificate[0];
                }
              } };
          SSLContext sslContext = SSLContext.getInstance("SSL");
          sslContext.init(null, trustAllCerts, new SecureRandom());
          SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();
          String[] ciphers = SSLContext.getDefault().getDefaultSSLParameters().getCipherSuites();
          ciphers = sslContext.getSupportedSSLParameters().getCipherSuites();
          OkHttpClient.Builder builder = new OkHttpClient.Builder();
          builder.sslSocketFactory(sslSocketFactory, (X509TrustManager)trustAllCerts[0]);
          builder.hostnameVerifier(new HostnameVerifier() {
                public boolean verify(String hostname, SSLSession session) {
                  return true;
                }
              });
          builder.connectTimeout(90L, TimeUnit.SECONDS);
          builder.readTimeout(90L, TimeUnit.SECONDS);
          builder.writeTimeout(90L, TimeUnit.SECONDS);
          OkHttpClient okHttpClient = builder.build();
          return okHttpClient;
        } catch (Exception e) {
          LogManager.traceErrMsg("Sample", methodName, "Response : " + e.getMessage());
          throw e;
        }