Error 403.7 - Forbidden: SSL client certificate is required

Hi people!
I�m developing a java client to a WebService (developed in .NET). The communication protocol is HTTPS to the URL where the Web Service is located (something like https://10.200.140.117/dirNotes/serviceName.asmx.). I�ve been reading many posts but I could'nt find the solution to the problem wich has the following message: Error 403.7 - Forbidden: SSL client certificate is required".
I�m using JDK 1.5 and developing and testing on Windows Plataform. I'm able to access the URL specified above directly from the browser, I installed the client certificate (the same that �ve put into the ,jks keystore. I�ve also imported the whole certificate chain of the server to the cacerts.
I�ll paste the code and the console trace below. I�d be very grateful if you can help me. Thanks a lot.
_THE CODE_
package principal;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.net.UnknownHostException;
import java.security.KeyStore;
import java.security.Security;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocket;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManagerFactory;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import entidade.Certificado;
public class SSLClient {
private static final int PORT_NUMBER = 443;
private static final String HTTPS_ADDRESS = "10.200.140.117";
private static String strCabecalhoMsg = "";
private static String strDadosMsg = "";
public static void main(String[] args) throws Exception {
System.setProperty("javax.net.ssl.keyStore", Certificado.getStrNomeArquivoJKSServidor());
System.setProperty("javax.net.ssl.keyStorePassword", "senha");
System.setProperty("javax.net.ssl.trustStore", "Certificados/cacerts");
System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
System.setProperty("javax.net.ssl.keyStoreType", "JKS");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.setProperty("javax.net.debug","ssl,handshake,record");
KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
ks.load(new FileInputStream(Certificado.getStrNomeArquivoJKSServidor()),
Certificado.getArranjoCharSenhaCertificadoServidor());
KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
kmf.init(ks, Certificado.getArranjoCharSenhaCertificadoServidor());
KeyStore ksT = KeyStore.getInstance(KeyStore.getDefaultType());
ksT.load(new FileInputStream("C:/Arquivos de programas/Java/jre1.5.0_05/lib/security/cacerts"), "changeit".toCharArray());
TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
tmf.init(ksT);
SSLContext sc = SSLContext.getInstance("SSLv3");
sc.init(kmf.getKeyManagers(), tmf.getTrustManagers(), new java.security.SecureRandom());
SSLSocketFactory factory = sc.getSocketFactory();
try{
// method to load the values of the strings strCabecalhoMsg and strDadosMsg
carregarXMLCabecalhoDados();
SSLSocket socket =(SSLSocket)factory.createSocket(HTTPS_ADDRESS, PORT_NUMBER);
socket.startHandshake();
String [] arr = socket.getEnabledProtocols();
URL url = new URL("https://10.200.140.117/dirNotes");
HttpsURLConnection.setDefaultSSLSocketFactory(factory);
HttpsURLConnection urlc = (HttpsURLConnection) url.openConnection();
urlc.setDoInput(true);
urlc.setUseCaches(false);
Object[] params = {strCabecalhoMsg, strDadosMsg};
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName("serviceName");
String ret = (String) call.invoke(params);
System.out.println("Result: " + ret);
catch (UnknownHostException uhe) {
uhe.printStackTrace();
System.err.println(uhe);
catch (Exception uhe) {
uhe.printStackTrace();
System.err.println(uhe);
private static void carregarXMLCabecalhoDados()
try
BufferedReader input = new BufferedReader( new FileReader("notas/cabecalho.xml"));
String str;
while((str=input.readLine()) != null)
strCabecalhoMsg += str ;
System.out.println("Cabe�a: " + strCabecalhoMsg);
input = new BufferedReader( new FileReader("notas/nota.xml"));
while((str=input.readLine()) != null)
strDadosMsg += str ;
System.out.println("Nota: " + strDadosMsg);
catch (FileNotFoundException e)
// TODO Auto-generated catch block
e.printStackTrace();
catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace();
_THE TRACE_
adding as trusted cert:
Subject: [email protected], CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
Issuer: [email protected], CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
Algorithm: RSA; Serial number: 0x1
Valid from Fri Jun 25 21:19:54 BRT 1999 until Tue Jun 25 21:19:54 BRT 2019
*others trusted certs*
trigger seeding of SecureRandom
done seeding SecureRandom
export control - checking the cipher suites
export control - no cached value available...
export control - storing legal entry into cache...
%% No cached client session
*** ClientHello, TLSv1
RandomCookie: GMT: 1198158630 bytes = { 48, 135, 53, 24, 112, 72, 104, 220, 27, 114, 37, 42, 25, 77, 224, 32, 12, 58, 90, 217, 232, 3, 104, 251, 93, 82, 40, 91 }
Session ID: {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods: { 0 }
main, WRITE: TLSv1 Handshake, length = 73
main, WRITE: SSLv2 client hello message, length = 98
main, READ: TLSv1 Handshake, length = 3953
*** ServerHello, TLSv1
RandomCookie: GMT: 1198158523 bytes = { 56, 166, 181, 215, 86, 245, 8, 55, 214, 108, 128, 50, 8, 11, 0, 209, 38, 62, 187, 185, 240, 231, 56, 161, 212, 111, 194, 79 }
Session ID: {222, 2, 0, 0, 147, 179, 182, 212, 18, 34, 199, 100, 168, 167, 48, 116, 140, 186, 151, 153, 226, 168, 163, 174, 24, 83, 208, 73, 179, 57, 86, 137}
Cipher Suite: SSL_RSA_WITH_RC4_128_MD5
Compression Method: 0
%% Created: [Session-1, SSL_RSA_WITH_RC4_128_MD5]
** SSL_RSA_WITH_RC4_128_MD5
*** Certificate chain
chain [0] = [
Version: V3
*many chains and related data*
Found trusted certificate:
Version: V3
Subject:
*many trusted certificates and related data*
*** ServerHelloDone
*** ClientKeyExchange, RSA PreMasterSecret, TLSv1
Random Secret: { 3, 1, 117, 112, 233, 166, 240, 9, 226, 67, 53, 111, 194, 84, 124, 103, 197, 28, 17, 36, 32, 48, 145, 166, 161, 61, 30, 63, 153, 214, 137, 113, 222, 204, 138, 77, 212, 75, 65, 192, 159, 215, 69, 156, 47, 188, 179, 219 }
main, WRITE: TLSv1 Handshake, length = 134
SESSION KEYGEN:
PreMaster Secret:
0000: 03 01 75 70 E9 A6 F0 09 E2 43 35 6F C2 54 7C 67 ..up.....C5o.T.g
0010: C5 1C 11 24 20 30 91 A6 A1 3D 1E 3F 99 D6 89 71 ...$ 0...=.?...q
0020: DE CC 8A 4D D4 4B 41 C0 9F D7 45 9C 2F BC B3 DB ...M.KA...E./...
CONNECTION KEYGEN:
Client Nonce:
0000: 47 6A 73 26 30 87 35 18 70 48 68 DC 1B 72 25 2A Gjs&0.5.pHh..r%*
0010: 19 4D E0 20 0C 3A 5A D9 E8 03 68 FB 5D 52 28 5B .M. .:Z...h.]R([
Server Nonce:
0000: 47 6A 73 BB 38 A6 B5 D7 56 F5 08 37 D6 6C 80 32 Gjs.8...V..7.l.2
0010: 08 0B 00 D1 26 3E BB B9 F0 E7 38 A1 D4 6F C2 4F ....&>....8..o.O
Master Secret:
0000: 0B 3A 71 F8 BB 79 5E 07 78 C2 5F 13 4F 92 9D 87 .:q..y^.x._.O...
0010: CF 69 0D 07 78 D2 59 46 1E C3 C1 5B A2 DB 04 B9 .i..x.YF...[....
0020: 42 60 92 48 59 8E FD FD C3 5B BD 00 9C 54 7A 7E B`.HY....[...Tz.
Client MAC write Secret:
0000: 33 7C 19 C4 75 D2 CE 82 39 98 37 E5 7D 20 CB B1 3...u...9.7.. ..
Server MAC write Secret:
0000: 1E 1E 48 C7 D4 77 23 E4 22 26 8B 98 2E 92 5C 95 ..H..w#."&....\.
Client write key:
0000: EE 05 39 76 B2 85 63 6C F7 70 30 CB 6D 08 07 54 ..9v..cl.p0.m..T
Server write key:
0000: 5C 2E 3B 5E DC D9 EC C5 04 C4 D5 B5 12 11 B9 08 \.;^............
... no IV for cipher
main, WRITE: TLSv1 Change Cipher Spec, length = 1
*** Finished
verify_data: { 143, 115, 243, 131, 242, 244, 12, 44, 191, 172, 205, 122 }
main, WRITE: TLSv1 Handshake, length = 32
main, READ: TLSv1 Change Cipher Spec, length = 1
main, READ: TLSv1 Handshake, length = 32
*** Finished
verify_data: { 231, 215, 37, 250, 177, 121, 111, 192, 11, 41, 1, 165 }
%% Cached client session: [Session-1, SSL_RSA_WITH_RC4_128_MD5]
setting up default SSLSocketFactory
use default SunJSSE impl class: com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl
class com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl is loaded
keyStore is : Certificados/certificadoSondaMonitor.jks
keyStore type is : JKS
keyStore provider is :
init keystore
init keymanager of type SunX509
trustStore is: Certificados\cacerts
trustStore type is : jks
trustStore provider is :
init truststore
adding as trusted cert:
Subject: [email protected], CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
Issuer: [email protected], CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
Algorithm: RSA; Serial number: 0x1
Valid from Fri Jun 25 21:19:54 BRT 1999 until Tue Jun 25 21:19:54 BRT 2019
adding as trusted cert:
* many certificates*
init context
trigger seeding of SecureRandom
done seeding SecureRandom
instantiated an instance of class com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl
export control - checking the cipher suites
export control - found legal entry in cache...
%% No cached client session
*** ClientHello, TLSv1
RandomCookie: GMT: 1198158632 bytes = { 93, 1, 41, 236, 165, 146, 251, 117, 129, 195, 129, 72, 245, 181, 43, 48, 80, 251, 244, 198, 223, 85, 82, 101, 20, 159, 17, 26 }
Session ID: {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods: { 0 }
main, WRITE: TLSv1 Handshake, length = 73
main, WRITE: SSLv2 client hello message, length = 98
main, READ: TLSv1 Handshake, length = 3953
*** ServerHello, TLSv1
RandomCookie: GMT: 1198158525 bytes = { 109, 114, 234, 1, 130, 97, 251, 9, 61, 105, 56, 246, 239, 222, 97, 143, 22, 254, 65, 213, 10, 204, 153, 67, 237, 133, 223, 48 }
Session ID: {23, 30, 0, 0, 26, 129, 168, 21, 252, 107, 124, 183, 171, 228, 138, 227, 94, 17, 195, 213, 216, 233, 205, 2, 117, 16, 21, 65, 123, 119, 171, 109}
Cipher Suite: SSL_RSA_WITH_RC4_128_MD5
Compression Method: 0
%% Created: [Session-2, SSL_RSA_WITH_RC4_128_MD5]
** SSL_RSA_WITH_RC4_128_MD5
*** Certificate chain
chain [0] = [
many chains again
*** ServerHelloDone
*** ClientKeyExchange, RSA PreMasterSecret, TLSv1
Random Secret: { 3, 1, 116, 247, 155, 227, 25, 25, 231, 129, 199, 76, 134, 222, 98, 69, 149, 224, 75, 6, 60, 121, 115, 216, 244, 246, 102, 92, 188, 64, 113, 56, 190, 43, 32, 51, 90, 254, 141, 184, 71, 48, 41, 29, 173, 180, 46, 116 }
main, WRITE: TLSv1 Handshake, length = 134
SESSION KEYGEN:
PreMaster Secret:
0000: 03 01 74 F7 9B E3 19 19 E7 81 C7 4C 86 DE 62 45 ..t........L..bE
0010: 95 E0 4B 06 3C 79 73 D8 F4 F6 66 5C BC 40 71 38 ..K.<ys...f\.@q8
0020: BE 2B 20 33 5A FE 8D B8 47 30 29 1D AD B4 2E 74 .+ 3Z...G0)....t
CONNECTION KEYGEN:
Client Nonce:
0000: 47 6A 73 28 5D 01 29 EC A5 92 FB 75 81 C3 81 48 Gjs(].)....u...H
0010: F5 B5 2B 30 50 FB F4 C6 DF 55 52 65 14 9F 11 1A ..+0P....URe....
Server Nonce:
0000: 47 6A 73 BD 6D 72 EA 01 82 61 FB 09 3D 69 38 F6 Gjs.mr...a..=i8.
0010: EF DE 61 8F 16 FE 41 D5 0A CC 99 43 ED 85 DF 30 ..a...A....C...0
Master Secret:
0000: FC C9 75 A4 2B F1 8A D8 AD 16 27 70 B7 E4 64 6C ..u.+.....'p..dl
0010: 05 D7 33 4A 53 91 2F 51 1E 32 D3 3B 2E 18 2E BC ..3JS./Q.2.;....
0020: E4 16 EE 2F 01 A1 08 48 19 09 32 68 CE 69 8F B1 .../...H..2h.i..
Client MAC write Secret:
0000: F1 95 3B CE 06 5B 8A 9B EC DE 1C 8F B4 AB D9 36 ..;..[.........6
Server MAC write Secret:
0000: BF 52 36 48 63 24 FE 74 22 BE 00 99 BE F0 6E E5 .R6Hc$.t".....n.
Client write key:
0000: 9F 08 0A 6E 8F 54 A3 66 1C BC C7 6B AE 88 67 E0 ...n.T.f...k..g.
Server write key:
0000: 06 A1 0B 4F 69 DE 5F AF 0E 6B B5 04 ED E8 EA F5 ...Oi._..k......
... no IV for cipher
main, WRITE: TLSv1 Change Cipher Spec, length = 1
*** Finished
verify_data: { 148, 93, 105, 42, 110, 212, 55, 2, 150, 191, 13, 111 }
main, WRITE: TLSv1 Handshake, length = 32
main, READ: TLSv1 Change Cipher Spec, length = 1
main, READ: TLSv1 Handshake, length = 32
*** Finished
verify_data: { 171, 150, 45, 10, 99, 35, 67, 174, 35, 52, 23, 192 }
%% Cached client session: [Session-2, SSL_RSA_WITH_RC4_128_MD5]
main, setSoTimeout(600000) called
main, WRITE: TLSv1 Application Data, length = 282
main, WRITE: TLSv1 Application Data, length = 8208
main, WRITE: TLSv1 Application Data, length = 1102
main, READ: TLSv1 Application Data, length = 1830
main, received EOFException: ignored
main, called closeInternal(false)
main, SEND TLSv1 ALERT: warning, description = close_notify
main, WRITE: TLSv1 Alert, length = 18
main, called close()
main, called closeInternal(true)
AxisFault
faultCode: {http://xml.apache.org/axis/}HTTP
faultSubcode:
faultString: (404)Not Found
faultActor:
faultNode:
faultDetail:
     {}:return code: 404
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>The page cannot be found</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=Windows-1252">
<STYLE type="text/css">
BODY { font: 8pt/12pt verdana }
H1 { font: 13pt/15pt verdana }
H2 { font: 8pt/12pt verdana }
A:link { color: red }
A:visited { color: maroon }
</STYLE>
</HEAD><BODY><TABLE width=500 border=0 cellspacing=10><TR><TD>
<h1>The page cannot be found</h1>
The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.
<hr>
<p>Please try the following:</p>
<ul>
<li>Make sure that the Web site address displayed in the address bar of your browser is spelled and formatted correctly.</li>
<li>If you reached this page by clicking a link, contact
the Web site administrator to alert them that the link is incorrectly formatted.
</li>
<li>Click the <a href="javascript:history.back(1)">Back</a> button to try another link.</li>
</ul>
<h2>HTTP Error 404 - File or directory not found.<br>Internet Information Services (IIS)</h2>
<hr>
<p>Technical Information (for support personnel)</p>
<ul>
<li>Go to <a href="http://go.microsoft.com/fwlink/?linkid=8180">Microsoft Product Support Services</a> and perform a title search for the words <b>HTTP</b> and <b>404</b>.</li>
<li>Open <b>IIS Help</b>, which is accessible in IIS Manager (inetmgr),
and search for topics titled <b>Web Site Setup</b>, <b>Common Administrative Tasks</b>, and <b>About Custom Error Messages</b>.</li>
</ul>
</TD></TR></TABLE></BODY></HTML>
     {http://xml.apache.org/axis/}HttpErrorCode:404
(404)Not Found
     at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:744)
     at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
     at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
     at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
     at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
     at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
     at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
     at org.apache.axis.client.Call.invoke(Call.java:2767)
     at org.apache.axis.client.Call.invoke(Call.java:2443)
     at org.apache.axis.client.Call.invoke(Call.java:2366)
     at org.apache.axis.client.Call.invoke(Call.java:1812)
     at principal.SSLClient.main(SSLClient.java:86)
(404)Not Found
-----

I'm having the same problem with the same URL. I try many configuration and nothing works. My code is:
public class NFeClient {
     static{
          Security.addProvider(new BouncyCastleProvider());
     public static void main(final String[] args) throws Exception {
          final String path = "https://homologacao.nfe.sefaz.rs.gov.br/ws/nfeconsulta/nfeconsulta.asmx";
          final String keyStoreProvider = "BC";
          final String keyStoreType = "PKCS12";
          final String keyStore = "/home/mendes/certificados/cert.p12";
          final String keyStorePassword = "xxxx";
          System.setProperty("javax.net.ssl.keyStoreProvider",keyStoreProvider);
          System.setProperty("javax.net.ssl.keyStoreType",keyStoreType);
          System.setProperty("javax.net.ssl.keyStore",keyStore);
          System.setProperty("javax.net.ssl.keyStorePassword",keyStorePassword);
          System.setProperty("javax.net.ssl.trustStore","/home/mendes/workspace/NFE/jssecacerts");
          final SSLContext context =  SSLContext.getInstance("TLS");
          final KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
          final KeyStore ks = KeyStore.getInstance(keyStoreType);
          ks.load(new FileInputStream(keyStore), keyStorePassword.toCharArray());
          kmf.init(ks, keyStorePassword.toCharArray());
          context.init(kmf.getKeyManagers(), null, null);
          final URL url = new URL(path);
          final HttpsURLConnection httpsConnection = (HttpsURLConnection) url.openConnection();
          httpsConnection.setDoInput(true);
          httpsConnection.setRequestMethod("GET");
          httpsConnection.setRequestProperty("Host", "iis-server");
          httpsConnection.setRequestProperty("UserAgent", "Mozilla/4.0");
          httpsConnection.setSSLSocketFactory(context.getSocketFactory());
          try{
               final InputStream is = httpsConnection.getInputStream();
               final byte[] buff = new byte[1024];
               int readed;
               while((readed = is.read(buff)) > 0)
                    System.out.write(buff,0,readed);
          }catch(final IOException ioe){
               ioe.printStackTrace();
}and the response of the server is always the same:
java.io.IOException: Server returned HTTP response code: 403 for URL: https://homologacao.nfe.sefaz.rs.gov.br/ws/nfeconsulta/nfeconsulta.asmx
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1241)
     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:234)
     at br.com.esales.nfe.signer.client.NFeClient.main(NFeClient.java:60)Edited by: mendes on Apr 25, 2008 9:56 AM

Similar Messages

  • HTTP Error 403.16 - Forbidden, Your client certificate is either not trusted or is invalid.

    Dear Experts,
    I have tried mutual authentication with sample website as per below link:
    http://itq.nl/testing-with-client-certificate-authentication-in-a-development-environment-on-iis-8-5/#comment-19427
    1. Created a Root certificate, client and server certificate based on this root certificate by using Makecert command as per below link:
    2. Import these certificates in Trusted Root Certification authority of both the stores (Local and Current user)
    3. Created a sample website with HTML page
    4.Hosted this website in IIS with HTTPS binding and selected the above server certifcate
    5. Enabled "Require SSL" and selected "Require" under SSL settings of website
    6. Exported the client certificate in base64 format --> Edited in notepad --> made the key into single line
    7. Placed the above key under Configuration editor --> system.webServer/security/authentication/iisClientCertificateMappingAuthentication --> one to one mapping with user credentials.
    8. I tried to access the website
    But, I ended with below error :(
    HTTP Error 403.16 - Forbidden
    Your client certificate is either not trusted or is invalid.
    Detailed Error Information:
    Module    IIS Web Core
    Notification    BeginRequest
    Handler    ExtensionlessUrlHandler-Integrated-4.0
    Error Code    0x800b0109
    Requested URL    https://localhost:443/
    Physical Path    E:\SampleRoot
    Logon Method    Not yet determined
    Logon User    Not yet determined
    Could you please let me know what I missed here.
    Note:
    I am using windows8, IIS8.0.
    Thanks in advance.
    Regards,
    M. Prasad Reddy.

    Hi Prasad,
      As per this case, I have been shared the corresponding details below
      1.First of all,make sure that you import the certificate whether it belongs to Trusted RootCertification or not .
        If that is the case ,Goto Microsoft Management Console (MMC), open the Certificates snap-in. 
        For instance, the certificate store that WCF is configured to retrieve X.509 certificates from, select the Trusted RootCertification Authoritiesfolder. Under the Trusted Root Certification Authorities folder, right-click the Certificatesfolder,
    point to All Tasks, and then click Import.
      2.you configured the server certificate as well, But check the client certificate whether have root certificate or not by following command?
    makecert -pe -n "CN=SSLClientAuthClient"
             -eku 1.3.6.1.5.5.7.3.2 -is root -ir localmachine -in WebSSLTestRoot
             -ss my -sr currentuser -len 2048
      3. Also check the Service Certificate whether its configured on the WCF Service side
      4.Make sure that you followed all the steps are done correctly from your given referred link below
    http://itq.nl/testing-with-client-certificate-authentication-in-a-development-environment-on-iis-8-5/#comment-19427
      5.Besides, please try to set the require SSL as ignore to see if you can access the website.
    If the above details cannot able to resolve this issue, please post your config file here.

  • Getting "Error 403--Forbidden" while accessing ADF bookmarked URL

    Hi,
    Here am trying to work with an ADF application to suport bookmarking.
    Following are the steps I did to create a sample application.
    Created a bounded task-flow (user-details.xml), which has the "Method call" as default activity along with an another view activity(userData.jsff page).
    This task-flow takes an input parameter "Id" to display user details. In the method call activity user data will be initialized using the given input parameter and then the data will be displayed using userData.jsff page.
    Created a view activity (details.jspx page) in adfc-config.xml file.
    Marked the "details.jspx" file as bookmark-able by changing "Bookmark property to true" and given a Bookmark URL Parameter "Name is Id and Value is #{pageFlowScope.user_id}".
    Dropped the bounded task-flow user-details.xml as a region into the details.jspx file.
    Now the user_id which is coming as URL Parameter will be passed to user-details.xml task-flows input parameter value.
    Created users.jspx page which lists all the users as home page. In the users.jspx page we'll have a link to user details page with a parameter Id.
    By running the application will get users page. When I click on the user details link in the users page, the app showing user details page as expected.
    Now I bookmarked the user details page. If I open the bookmarked page in the same tab, it is working fine. But when I open this bookmark in a new tab getting the "Error 403--Forbidden" response.
    Bookmarked URL: localhost:7101/BookmarkTestApp-ViewController-context-root/faces/user_details?id=123&_afrWindowMode=0&_afrLoop=4884151149818&_adf.ctrl-state=35yghmx4f_18
    When I click the above bookmark in another tab the url is processing for few seconds ( 2 to 3 seconds) and converts to localhost:7101/BookmarkTestApp-ViewController-context-root/ and giving 403 response. At this time it is not touching my beans at all (verified this by running the server in debug mode).
    Web.xml looks like:
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             version="2.5" xmlns="http://java.sun.com/xml/ns/javaee">
      <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
      </context-param>
      <context-param>
        <description>If this parameter is true, there will be an automatic check of the modification date of your JSPs, and saved state will be discarded when JSP's change. It will also automatically check if your skinning css files have changed without you having to restart the server. This makes development easier, but adds overhead. For this reason this parameter should be set to false when your application is deployed.</description>
        <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
        <param-value>false</param-value>
      </context-param>
      <context-param>
        <description>Whether the 'Generated by...' comment at the bottom of ADF Faces HTML pages should contain version number information.</description>
        <param-name>oracle.adf.view.rich.versionString.HIDDEN</param-name>
        <param-value>true</param-value>
      </context-param>
      <filter>
        <filter-name>trinidad</filter-name>
        <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
      </filter>
      <filter>
        <filter-name>adfBindings</filter-name>
        <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
      </filter>
      <filter-mapping>
        <filter-name>trinidad</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <filter-mapping>
        <filter-name>adfBindings</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
      </filter-mapping>
      <listener>
        <listener-class>oracle.adf.mbean.share.config.ADFConfigLifeCycleCallBack</listener-class>
      </listener>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet>
        <servlet-name>resources</servlet-name>
        <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>BIGRAPHSERVLET</servlet-name>
        <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.graph.GraphServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>BIGAUGESERVLET</servlet-name>
        <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.gauge.GaugeServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>MapProxyServlet</servlet-name>
        <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.geoMap.servlet.MapProxyServlet</servlet-class>
      </servlet>
      <servlet>
        <servlet-name>GatewayServlet</servlet-name>
        <servlet-class>oracle.adfinternal.view.faces.bi.renderkit.graph.FlashBridgeServlet</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/adf/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/afr/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>BIGRAPHSERVLET</servlet-name>
        <url-pattern>/servlet/GraphServlet/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>BIGAUGESERVLET</servlet-name>
        <url-pattern>/servlet/GaugeServlet/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>MapProxyServlet</servlet-name>
        <url-pattern>/mapproxy/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>resources</servlet-name>
        <url-pattern>/bi/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>GatewayServlet</servlet-name>
        <url-pattern>/flashbridge/*</url-pattern>
      </servlet-mapping>
      <mime-mapping>
        <extension>swf</extension>
        <mime-type>application/x-shockwave-flash</mime-type>
      </mime-mapping>
      <jsp-config>
        <jsp-property-group>
          <url-pattern>*.jsff</url-pattern>
          <is-xml>true</is-xml>
        </jsp-property-group>
      </jsp-config>
    </web-app>
    Am I missing any thing here.
    Thanks in advance.
    -Gopal.

    https://blogs.oracle.com/DavidGiammona/entry/why_do_i_get_this_error_403_--

  • Error 403-forbidden from IE5 while authenticating a user through NT Realm

    Hi,
    Before posting this request, I checked the forum until Sep.18 to see if nobody
    else experienced my problem, but in vain.
    I am using WLS6.1Sp1 under NT4
    I would like that NT users for defined NT Primary Domain Controller authenticate
    themselves before accessing a web app. For that, I followed thoroughly the BEA
    Doc to get the config.xml, web.xml, weblogic.xml and filerealm.properties correctly
    configured.
    The <auth-method> is set to FORM. The <security-role> and <security-role-assignment>
    are also set with business roles and principals from the NT PDC. the <security-constraint>
    with all the sub-tags are also defined. etc.etc. When I use the WL console, to
    check users and groups lists, it works fine although it takes a lot of time before
    being displayed (15 to 20 minutes !!!).
    Through a Login.jsp, the user enters his/her login name and password. The result
    is that I get the following message :
    "Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it. Authorization
    will not help and the request SHOULD NOT be repeated. If the request method was
    not HEAD and the server wishes to make public why the request has not been fulfilled,
    it SHOULD describe the reason for the refusal in the entity. This status code
    is commonly used when the server does not wish to reveal exactly why the request
    has been refused, or when no other response is applicable."
    No trace in the log files. No warning . Nothing.
    My questions are:
    1- Has somebody already experienced this?
    2- Could you then help me ?
    By advance , thank you very much.
    Athmani H.
    Note : I can provide you through email the config.xml, web.xml, weblogic.xml and
    filerealm.properties and the concerned .jsp files on demand

    Hi Jerry,
    Many thanks for your interest and your help.
    weblogic.properties file for WLS 6.1 SP1? There is none... I do have a filerealm.properties. I didn't state that I was using a weblogic.properties
    file.
    I checked the URL you proposed. I changed the <Auth-method> from FORM into BASIC.
    A pop-up window is displayed requesting the user to enter username and password.
    The result is that I get a web page displaying an Error 404 --not found.
    Here is the complete error message :"Error 404--Not Found
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.5 404 Not Found
    The server has not found anything matching the Request-URI. No indication is given
    of whether the condition is temporary or permanent.If the server does not wish
    to make this information available to the client, the status code 403 (Forbidden)
    can be used instead. The 410 (Gone) status code SHOULD be used if the server knows,
    through some internally configurable mechanism, that an old resource is permanently
    unavailable and has no forwarding address."
    The message is displayed when the browser tries to resolve the following URL :http://localhost:7001/examplesWebApp/j_security_check
    Having said that, I had already configured the <security-role-assignement> with
    role-name and principals in weblogic.xml, as well as the <security-role> tag in
    web.xml.
    Thanks for your help
    Cheers
    Habib
    Jerry <[email protected]> wrote:
    Hi Athmani,
    weblogic.properties file for WLS 6.1 SP1? There is none... weblogic.properties
    is in WebLogic
    5.1 and lower -- it was changed to config.xml for WLS 6.0 .. what are
    you using your
    weblogic.properties file for?
    Anyways,
    I have gotten NTRealms to successfully work with WLS 6.1, with security
    on a web app, allowing
    NT users to access certain resources. This stuff works.
    Since you can see your users and groups through the console (even though
    it takes a while) I
    think that your NTRealm setup is okay.
    I would guess that you have a problem with your deployment descriptors
    in your web
    application.
    There are quite a few posts in this newsgroup that illustrate how to
    set up security
    constraints on resources in your web app with the deployment descriptors.
    For example, check out
    http://newsgroups.bea.com/cgi-bin/dnewsweb?cmd=article&group=weblogic.developer.interest.security&item=6244&utag=
    Let me know how it goes, okay?
    Cheers,
    Joe Jerry
    "Athmani H." wrote:
    Hi,
    Before posting this request, I checked the forum until Sep.18 to seeif nobody
    else experienced my problem, but in vain.
    I am using WLS6.1Sp1 under NT4
    I would like that NT users for defined NT Primary Domain Controllerauthenticate
    themselves before accessing a web app. For that, I followed thoroughlythe BEA
    Doc to get the config.xml, web.xml, weblogic.xml and filerealm.propertiescorrectly
    configured.
    The <auth-method> is set to FORM. The <security-role> and <security-role-assignment>
    are also set with business roles and principals from the NT PDC. the<security-constraint>
    with all the sub-tags are also defined. etc.etc. When I use the WLconsole, to
    check users and groups lists, it works fine although it takes a lotof time before
    being displayed (15 to 20 minutes !!!).
    Through a Login.jsp, the user enters his/her login name and password.The result
    is that I get the following message :
    "Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it. Authorization
    will not help and the request SHOULD NOT be repeated. If the requestmethod was
    not HEAD and the server wishes to make public why the request has notbeen fulfilled,
    it SHOULD describe the reason for the refusal in the entity. This statuscode
    is commonly used when the server does not wish to reveal exactly whythe request
    has been refused, or when no other response is applicable."
    No trace in the log files. No warning . Nothing.
    My questions are:
    1- Has somebody already experienced this?
    2- Could you then help me ?
    By advance , thank you very much.
    Athmani H.
    Note : I can provide you through email the config.xml, web.xml, weblogic.xmland
    filerealm.properties and the concerned .jsp files on demand

  • HTTP connection to ABAP Runtime failed. Error: 403 Forbidden

    Hi ALL
    We where testing our scenario using the Test Configuration in Integration Engine.
    We have come across the following error in the second step of Determining the receiver.Here is the error message we received...
    HTTP connection to ABAP Runtime failed. Error: 403 Forbidden URL: _http://SAPXDV01.sap.client1.local:8000/sap/xi/simulation?sap-client=150 User: PIDIRUSER
    Please, do let us know ... if you have received similar error & what solution can be applied...
    Your help is greatly appreciated!
    Thank you,
    Patrick

    Hi,
    Go through this thread...
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/0f00c890-0201-0010-beb2-c96050edc426
    JCO_COMMUNICATION_FAILURE
    Error in XI server: JCO_COMMUNICATION_FAILURE in Message Mapping
    This might help you..
    Regards,
    Divya

  • HTTP Error 403 - Forbidden on Cisco ISE and SCEP RA

    Dear Experts,
    We are in process of deploying ISE 1.2 in our environment for BYOD.
    The initial step of this process is to configure ISE as an SCEP Proxy and it requires certain configuration on the local CA. We have done all the required configurations on the local CA server.
    Now, when we try to connect ISE with the local CA using SCEP RA Profiles, it gives "HTTP Error 403 - Forbidden". The URL we are using is http://ipaddress/certsrv/mscep/mscep.dll.
    It seems that the local CA is not letting the ISE access the mscep.dll file. Now I dont understand how to allow ISE to access this file or the url. Please advise if there is any step by step process guide. Although, I have followed the ones from Cisco but it doesn't state how to give ISE the required rights for accessing mscep.dll.
    Thanks in advance.
    Jay

    Jay,
    You should use this URL:
    https://ipaddress/certsrv/mscep
    If you try to get the cert from an http address, you will get an error.  You should be using https.  Also, the mscep.dll should not be part of the URL.
    You can test this connectivity from any browser by putting that URL in the sddress bar.  You should see a page similar to this:
    Please Rate Helpful posts and mark this question as answered if, in fact, this does answer your question.  Otherwise, feel free to post follow-up questions.
    Charles Moreton

  • Return The remote server returned an error: (403) Forbidden error for some file types

    hi
    am using below code to get the byte array 
    byte[] myDataBuffer = client.DownloadData((new Uri(sourceUrl)));
    for source of type .txt/.jpg no problem with accessing.but the file type with .master/.wsp/.cs
    it is returning "The remote server returned an error: (403) Forbidden error for some file types" Error.how can i get rid of this.please help me
    Thanks in Advance

    Hi,
    It seems there is something wrong with your code, from your code the account and key are the same, because their appsetting name are the same.
    string account = ConfigurationManager.AppSettings["StorageAccountName"];
    //string account = CloudConfigurationManager.GetSetting("StorageAccountName");
    //string key = CloudConfigurationManager.GetSetting("StorageAccountAccessKey");
    string key = ConfigurationManager.AppSettings["StorageAccountName"];
    string connectionString = String.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", account, key);
    return CloudStorageAccount.Parse(connectionString);
    If you use CloudConfigurationManager.GetSetting, please consider set azure project as the startup project, if not, this value will be null, this resulted in solution being started as a web project that didn't run inside the Azure emulator. Since CloudConfigurationManager.GetSetting
    tries to get setting by contacting Azure (or Azure emulator in this case), and it is not running, it returns null.
    Best Regards,
    Jambor
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • The remote server returned an error: (403) Forbidden on container.CreateIfNotExistsAsync() method

    static class StorageUtils
            public static CloudStorageAccount StorageAccount
                get
                    string account = ConfigurationManager.AppSettings["StorageAccountName"];
                    //string account = CloudConfigurationManager.GetSetting("StorageAccountName");
                    //string key = CloudConfigurationManager.GetSetting("StorageAccountAccessKey");
                    string key = ConfigurationManager.AppSettings["StorageAccountName"];
                    string connectionString = String.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", account, key);
                    return CloudStorageAccount.Parse(connectionString);
    I have a web project and I converted it to "MS Azure Cloud Service Project"
    I make the Azure project default and run CreateAndConfigureAsync() to create the container. It works fine and creates the images container in Azure storage.
    Then I make my web project default and change CloudConfigurationManager.GetSetting to ConfigurationManager.AppSettings in StorageUtils class and run the web app project. Then I get "The remote server returned an error: (403) Forbidden" error whencontainer.CreateIfNotExistsAsync()
    line get executed.
    What is the reason for this?
    async public void CreateAndConfigureAsync()
                try
                    CloudStorageAccount storageAccount = StorageUtils.StorageAccount;
                    // Create a blob client and retrieve reference to images container
                    CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
                    CloudBlobContainer container = blobClient.GetContainerReference("images");
                    // Create the "images" container if it doesn't already exist.
                    if (await container.CreateIfNotExistsAsync())
                        // Enable public access on the newly created "images" container
                        await container.SetPermissionsAsync(
                            new BlobContainerPermissions
                                PublicAccess =
                                    BlobContainerPublicAccessType.Blob
                catch (Exception ex)
            }

    Hi,
    It seems there is something wrong with your code, from your code the account and key are the same, because their appsetting name are the same.
    string account = ConfigurationManager.AppSettings["StorageAccountName"];
    //string account = CloudConfigurationManager.GetSetting("StorageAccountName");
    //string key = CloudConfigurationManager.GetSetting("StorageAccountAccessKey");
    string key = ConfigurationManager.AppSettings["StorageAccountName"];
    string connectionString = String.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", account, key);
    return CloudStorageAccount.Parse(connectionString);
    If you use CloudConfigurationManager.GetSetting, please consider set azure project as the startup project, if not, this value will be null, this resulted in solution being started as a web project that didn't run inside the Azure emulator. Since CloudConfigurationManager.GetSetting
    tries to get setting by contacting Azure (or Azure emulator in this case), and it is not running, it returns null.
    Best Regards,
    Jambor
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • BizTalk to Web Service - Error - The remote server returned an error: (403) Forbidden.

    Hi Everyone,
    I am connecting to an external web service from my biztalk application through a dynamic send port.
    When my biztalk application is trying to send the request message to the web service through the send port, I am getting the following error :
    The remote server returned an error: (403) Forbidden. 
    The external web service team have provided a certificate and a private key to install in my server. 
    I have installed the certificate by double click the .pfx file using the private key and have added the certificate in the host ProcessHostx64. 
    Still i am getting the same error.
    Can someone help on this issue ?
    Many Thanks,
    Anand
    S B A

    The Private Key should be installed under the user running the BizTalk Server Host. Please confirm that you have done this?
    If so, try to make this work in a small .NET test Application before porting it to BizTalk, so that you can confirm that you do have sufficient credentials to call the Service.
    Morten la Cour

  • HTTP connection to ABAP Runtime failed. Error: 403 Forbidden URL

    HI experts,
    I am tsting Test configuration in ID in Quality environment. I am getting below error for all interfaces.
    but same interfaces are working fine in Develoment environment.
    Internal Error
    HTTP connection to ABAP Runtime failed. Error: 403 Forbidden URL: http://abcdxi06.abcdk.abcpower.com.sg:8000/sap/xi/simulation?sap-client=300 User: PIDIRUSER.
    thanks
    Srinivas

    Similar problem discussed here:
    HTTP connection to ABAP Runtime failed : 403 : forbidden
    Error testing configuration: "HTTP connection failed"
    Check if the port is defined, as suggested in second link.
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Oct 1, 2009 1:27 PM

  • Error 403--Forbidden

    Hi all ,
    I create a simple stateless ejb named LoginSession to manage the login task
    , package it to a ejb jar file named login.jar , and then I want to explode
    it as a wls7.0 webservice , the build.xml like this :
    <project name="buildWebservice" default="ear">
    <target name="ear">
    <servicegen destEar="login.ear" contextURI="login">
    <service ejbJar="login.jar" includeEJBs="LoginSession"
    targetNamespace="http://www.ricobest.com/webservice/login"
    serviceName="LoginSession" serviceURI="/LoginSession" generateTypes="True"
    expandMethods="True"/>
    </servicegen>
    </target>
    </project>
    When after ant running successfully , ant generated login.ear file for me ,
    but I find some ploblems :
    1 , the ear file contains login jar and web-service.war file , similar with
    wls6.1 webservice , but the web.xml file in web-service.war is different
    from wls6.1 , the 7.0 file is black ! only the following 3 lines :
    #1 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
    2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    #2 <web-app>
    #3 </web-app>
    2 , I can not file the wsdl.jsp file in the ear file , whick will contained
    in 6.1 webservice .
    3 , when I want to request http://localhost:7001/login/ , error message
    list in my browser :
    Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it.
    Authorization will not help and the request SHOULD NOT be repeated. If the
    request method was not HEAD and the server wishes to make public why the
    request has not been fulfilled, it SHOULD describe the reason for the
    refusal in the entity. This status code is commonly used when the server
    does not wish to reveal exactly why the request has been refused, or when no
    other response is applicable.
    ps , I do need client jar , so in build.xml , does not include client
    element , and when I insert it to the xml file , result is the same.
    Any response will be appreciated .
    Thank you.
    lcl

    Thank you ,Manoj
    "manoj cheenath" <[email protected]> :[email protected]...
    see comments inline:
    regards,
    -manoj
    "lcl" <[email protected]> wrote in message news:[email protected]...
    Hi all ,
    I create a simple stateless ejb named LoginSession to manage the login task
    , package it to a ejb jar file named login.jar , and then I want to explode
    it as a wls7.0 webservice , the build.xml like this :
    <project name="buildWebservice" default="ear">
    <target name="ear">
    <servicegen destEar="login.ear" contextURI="login">
    <service ejbJar="login.jar" includeEJBs="LoginSession"
    targetNamespace="http://www.ricobest.com/webservice/login"
    serviceName="LoginSession" serviceURI="/LoginSession" generateTypes="True"
    expandMethods="True"/>
    </servicegen>
    </target>
    </project>
    When after ant running successfully , ant generated login.ear file for me ,
    but I find some ploblems :
    1 , the ear file contains login jar and web-service.war file , similar with
    wls6.1 webservice , but the web.xml file in web-service.war is different
    from wls6.1 , the 7.0 file is black ! only the following 3 lines :
    #1 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
    2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    #2 <web-app>
    #3 </web-app>
    In WLS 7.0 there is a new DD file for Web Service. Look for
    web-services.xml file inside the WEB-INF dir. There is no
    change needed to the web.xml file.
    2 , I can not file the wsdl.jsp file in the ear file , whick will contained
    in 6.1 webservice .
    The WSDL is generated from the deployment information at
    runtime.
    3 , when I want to request http://localhost:7001/login/ , error message
    list in my browser :
    Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it.
    Authorization will not help and the request SHOULD NOT be repeated. If the
    request method was not HEAD and the server wishes to make public why the
    request has not been fulfilled, it SHOULD describe the reason for the
    refusal in the entity. This status code is commonly used when the server
    does not wish to reveal exactly why the request has been refused, or when no
    other response is applicable.
    <servicegen destEar="login.ear" contextURI="login">
    <service ejbJar="login.jar" includeEJBs="LoginSession"
    targetNamespace="http://www.ricobest.com/webservice/login"
    serviceName="LoginSession" serviceURI="/LoginSession" generateTypes="True"
    expandMethods="True"/>
    I think the URL you need to hit is:
    http://localhost:7001/login/LoginSession
    ps , I do need client jar , so in build.xml , does not include client
    element , and when I insert it to the xml file , result is the same.
    You can use clientgen to generate the client.jar file
    by pointing to the deployed WSDL.
    Any response will be appreciated .
    Thank you.
    lcl
    [att1.html]

  • Error 403--Forbidden using eclipse and weblogic

    hi,
    i am new here on j2ee
    I am using eclipse3.4 and weblogic 9.1.2 on xp. I am trying to make simple hello world servlet
    here is what i did
    on the eclipse click New and click on Dynamic project
    click on Servlet and write following code for the servlet
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    * Servlet implementation class SecondServlet
    public class SecondServlet extends HttpServlet {
         public void service (HttpServletRequest req, HttpServletResponse res)
         throws IOException
              res.setContentType("text'html");
              PrintWriter out = res.getWriter();
              out.println("<html><head>" + "<title> Hello World </title></head>" +
                        "<h1>Hello Worldasd </h1></body></html>");
    folder structure and file web.xml is created by eclipse itself.
    then i started weblogic from the eclipse
    and i have following error
    http://localhost:7001/SecondServlet/
    Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated. If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it SHOULD describe the reason for the refusal in the entity. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.

    I do connect with router/modem
    eclipse did create weblogic.xml. here it is
    <?xml version="1.0" encoding="UTF-8"?>
    <wls:weblogic-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
    <wls:jsp-descriptor>
    <wls:keepgenerated>true</wls:keepgenerated>
    <wls:working-dir>C:\Documents and Settings\Owner\My Documents\jj\java-files\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\SecondServlet</wls:working-dir>
    <wls:debug>true</wls:debug>
    </wls:jsp-descriptor>
    <wls:context-root>SecondServlet</wls:context-root>
    </wls:weblogic-web-app>
    i did create a user proejct domain in weblogic.
    I did try by login through localhost:7001/console. but it didn't work. following is the problem
    Error 503--Service Unavailable
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.5.4 503 Service Unavailable
    The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay may be indicated in a Retry-After header. If no Retry-After is given, the client SHOULD handle the response as it would for a 500 response.
    Note: The existence of the 503 status code does not imply that a server must use it when becoming overloaded. Some servers may wish to simply refuse the connection.
    any more suggestion will be helpful.
    this is just a start so please i need to solve this problem so that i can move ahead
    thanks
    Edited by: chitochez on Dec 18, 2008 5:45 AM

  • Error message when trying to sign in to HP ePrint "ajax submit failed: error = 403, forbidden"

    HP Photosmart 7525
    Windows 7
    Ajax submit failed: error = 403, Forbidden
    Installed new printer: Photosmart 7525
    I am trying to set up my ePrint account and add my printer and it won't let me sign in or create a new account.
    Thanks for your help!
    Deb
    This question was solved.
    View Solution.

    One can also restart the computer.After it shuts down leave it off for at least a minute and then reattempt access the site once computer is back on and running. I would also check to make sure that Java is up to date and that Adobe Flash is up to date. 
    I am a former employee of HP...
    How do I give Kudos?| How do I mark a post as Solved?

  • Server Error  403 - Forbidden: Access is denied. You do not have permission to view this directory or page using the credentials that you supplied.

    Hi,
    I`d like to get your advice on Server Error 403 - Forbidden: Access is denied. I use to visit a webpage with no issues so far but now i getting this error each time i`m trying to get into. Any ideas in how to solve it? A step to step process will be highly appreciated.
    Thanks.
    PS, I`m using the latest safari 8.0.3 and OS X 10.10.2.

    It's an error message from the web server, not from Safari. There's a slight chance that you might be able to clear it as follows.
    From the Safari menu bar, select
              Safari ▹ Preferences... ▹ Privacy ▹ Remove All Website Data...
    and confirm. Test.

  • I tried to access my website, but Firefox threw the error: 403 Forbidden, you don't have the permissions to view.

    My website - Mousenstein.com - is under construction w/Dreamweaver + Flash.
    I uploaded my files to my server.
    I opened Firefox and entered the URL:
    http://www.mousenstein.com
    The error "403 Forbidden" appeared, and ...
    You do not have the permissions to access.
    I have tried to upload my site countless times, but never successfully - it is a huge headache. That said, I have never gotten the "403 Forbidden - no permissions" before.
    All other failures threw the error "404, can not locate the URL "/" on this server.
    Any help will be enormously appreciated.
    P.S. : Are there permissions preferences on Firefox? I found one under Tools Menu, but it didn't seem to address my problem.
    Thanks

    I get the same thing with Firefox, IE8, Opera, and Safari. It isn't a Firefox only problem.
    Are you new to that webhosting service? <br /> Have you ever uploaded web pages to that same web hosting service previously, pages that worked after an upload? <br /> Are those pages listed as ''' "public" ''' pages in your web hosts control panel?
    My suggestion is to "download" your homepage and associated files & images from your PC, up to the server, using your web hosts control panel and see how that works.
    Beyond that, I suspect that you might have missed an important setting in Dreanweaver for uploading to the web host's server. You might try asking about this issue at a Dreamweaver support forum.

Maybe you are looking for