Support WebLogic DD's Where Semantically Equivalent

Web (weblogic.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
description low   Ignore
weblogic-version impossible   Specific to Weblogic
security-role-assignment:role-name low security-role-mapping:role-name in sun-web.xml SECURITY
security-role-assignment:principal-name low security-role-mapping:principal-name in sun-web.xml SECURITY
security-role-assignment:externally-defined unknown   SECURITY: Ignore
run-as-role-assignment:role-name low servlet:run-as in web.xml SECURITY: Ignore
run-as-role-assignment:run-as-principal-name low servlet:principal-name in sun-web.xml SECURITY: Ignore
resource-description low resource-ref in sun-web.xml Yes, without resource-link
resource-env-description low resource-env-ref in sun-web.xml Yes, without resource-link
ejb-reference-description low ejb-ref in sun-web.xml Yes
service-reference-description low service-ref in sun-web.xml WEB SERVICE
session-descriptor:timeout-secs low "timeoutSeconds" property of session-config:session-properties in sun-web.xml Yes
session-descriptor:invalidation-interval-secs low "reapIntervalSeconds" property of session-config:session-manager:manager-properties in sun-web.xml Yes
session-descriptor:sharing-enabled high   Ignore
session-descriptor:debug-enabled low   Ignore
session-descriptor:id-length medium   Ignore
session-descriptor:tracking-enabled low   Ignore
session-descriptor:cache-size low   Ignore
session-descriptor:max-in-memory-sessions low "maxSessions" property of session-config:session-manager:manager-properties in sun-web.xml Yes
session-descriptor:cookies-enabled low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-name low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-path low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-domain low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-comment low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-secure low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-max-age-secs low Already supported via Servlet 3.0 Yes
session-descriptor:cookie-http-only low Already supported via Servlet 3.0 Yes
session-descriptor:persistent-store-type high   Ignore
session-descriptor:persistent-store-cookie-name high   Support for cookie-based persistence has been added to GlassFish v3.1, see IT 11648
session-descriptor:persistent-store-dir low "directory" property of session-config:session-manager:store-properties in sun-web.xml Yes
session-descriptor:persistent-store-pool high   Ignore
session-descriptor:persistent-store-table high   Ignore
session-descriptor:jdbc-column-name-max-inactive-interval high   Ignore
session-descriptor:jdbc-connection-timeout-secs high   Ignore
session-descriptor:url-rewriting-enabled low Already supported via Servlet 3.0 Yes
session-descriptor:http-proxy-caching-of-cookies low   Ignore
session-descriptor:encode-session-id-in-query-params medium   Ignore
session-descriptor:runtime-main-attribute high    
jsp-descriptor:page-check-seconds low Combination of "checkInterval ", "development", and "reload-interval" init params of JspServlet Yes
jsp-descriptor:precompile low   TBD. Need change in web deployment.
jsp-descriptor:precompile-continue medium   Ignore
jsp-descriptor:keepgenerated low "keepgenerated" init parameter of JspServlet Yes
jsp-descriptor:verbose medium Already supported by jspc tool, but printing out debug info to the browser will be high Ignore
jsp-descriptor:working-dir low "scratchdir" init parameter of JspServlet Yes
jsp-descriptor:print-nulls low   Ignore
jsp-descriptor:backward-compatible impossible   Ignore
jsp-descriptor:encoding low   Ignore
jsp-descriptor:package-prefix low   Ignore
jsp-descriptor:exact-mapping high   Ignore
jsp-descriptor:default-file-name unknown   Ignore
jsp-descriptor:rtexprvalue-jsp-param-name medium   Ignore
jsp-descriptor:optimize-java-expression unknown   Ignore
jsp-descriptor:compress-html-template high   Yes
jsp-descriptor:super-class     Ignore
jsp-descriptor:debug     Ignore
jsp-descriptor:resource-provider-class     Ignore
auth-filter unknown   Ignore
container-descriptor:check-auth-on-forward high   Ignore
container-descriptor:filter-dispatched-requests-enabled low   Ignore
container-descriptor:redirect-with-absolute-url low   Ignore
container-descriptor:index-directory-enabled low "listings" init parameter of DefaultServlet Yes
container-descriptor:index-directory-sort-by low "sortedBy" init parameter of DefaultServlet Yes
container-descriptor:servlet-reload-check-secs high   Ignore
container-descriptor:resource-reload-check-secs high   Ignore
container-descriptor:single-threaded-servlet-pool-size low   Ignore
container-descriptor:session-monitoring-enabled low   Ignore
container-descriptor:save-sessions-enabled low Same as "asadmin redeploy --properties keepSessions=true" Yes
container-descriptor:prefer-web-inf-classes low "delegate" attribute of the class-loader element in sun-web.xml Yes
container-descriptor:default-mime-type low   Ignore
container-descriptor:client-cert-proxy-enabled medium Similar support already present in GlassFish via "auth-pass-through-enabled" http attribute in domain.xml and provider-based com.sun.appserv.ProxyHandler mechanism Ignore
container-descriptor:relogin-enabled high   Not that relevant, because Weblogic provides it only for backward compatibility reasons, and GlassFish already does the right thing by default. SECURITY:Ignore
container-descriptor:allow-all-roles high   Not that relevant, because Weblogic provides it only for backward compatibility reasons, and GlassFish already does the right thing by default. SECURITY:Ignore
container-descriptor:native-io-enabled high   Ignore
container-descriptor:minimum-native-file-size high   Ignore
container-descriptor:disable-implicit-servlet-mapping low   Ignore
container-descriptor:optimistic-serialization medium   Ignore
container-descriptor:require-admin-traffic high   Ignore
container-descriptor:access-logging-disabled low   Ignore
charset-params:input-charset medium   Ignore
charset-params:charset-mapping high   Ignore
virtual-directory-mapping low alternatedocroot_x property of virtual-server in domain.xml and alternatedocroot_x property in sun-web.xml Ignore
url-match-map high    
security-permission medium   SECURITY
context-root low context-root element in sun-web.xml Yes
wl-dispatch-policy high   Ignore
servlet-descriptor low   We will implement run-as-principal-name. But not init-as-principal-name, destroy-as-principal name as we do not distinguish run-as for for init and destroy. SECURITY. The dispatch-policy is a deprecated element in weblogic.xml
work-manager high    
logging high   GlassFish does not support per-web-application logging
library-ref high   Ignore
fast-swap high   Ignore
session-descriptor:persistent-data-source-jndi-name high   Ignore, async-jdbc
session-descriptor:persistent-session-flush-interval     Ignore, async-jdbc
session-descriptor:persistent-session-flush-threshold     Ignore, async-jdbc
session-descriptor:persistent-async-queue-timeout high   Ignore, async-jdbc
session-descriptor:monitoring-attribute-name medium   Ignore
component-factory-class-name high   Ignore
library-ref high   Ignore
descriptionType     Ignore
container-descriptor:redirect-content-type     deprecated, Ignore
container-descriptor:redirect-content     deprecated, Ignore
container-descriptor:temp-dir low   Ignore
container-descriptor:retain-original-url medium   Ignore
container-descriptor:show-archived-real-path-enabled     Ignore

EJB (weblogic-ejb-jar.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
allow-concurrent-calls     Supporting the default conflicts with ejb 3.1, but we could support an explicitly specified value of true/false.
allow-remove-during-transaction low    
cache-between-transactions     CMP related. Doesn't make sense to put effort into this.
cache-type high   Anything dealing with the cache is challenging since we have a completely different cache implementation.
client-authentication low    
client-cert-authentication low    
clients-on-same-server high    
component-factory-class-name high    
concurrency-strategy     CMP
confidentiality low    
connection-factory-jndi-name unknown    
connection-factory-resource-link high    
create-as-principal-name medium    
delay-updates-until-end-of-tx     CMP
description low    
destination-jndi-name low    
disable-warning medium    
dispatch-policy high    
distributed-destination-connection high    
durable-subscription-deletion medium    
ejb-local-reference-description medium    
ejb-name low    
ejb-reference-description low    
ejb-ref-name low    
enable-bean-class-redeploy high    
enable-call-by-reference low    
enable-dynamic-queries     CMP
entity-always-uses-transaction     CMP
entity-cache     CMP
entity-cache-name     CMP
entity-cache-ref     CMP
entity-clustering     CMP
entity-descriptor     CMP
estimated-bean-size     CMP
externally-defined unknown    
externally-defined unknown    
finders-load-bean     CMP
generate-unique-jms-client-id medium    
global-role     deprecated
home-call-router-class-name high    
home-is-clusterable high    
home-load-algorithm high    
idempotent-methods high    
identity-assertion high    
idle-timeout-seconds low    
iiop-security-descriptor low    
init-suspend-seconds medium    
initial-beans-in-free-pool medium    
initial-context-factory high    
integrity low    
invalidation-target     CMP
is-modified-method-name     CMP
isolation-level     CMP
jms-client-id low    
jms-polling-interval-seconds medium    
jndi-name low    
local-jndi-name high    
max-beans-in-cache low    
max-messages-in-transaction unknown    
max-beans-in-free-pool low    
max-queries-in-cache     CMP
max-suspend-seconds unknown    
message-destination-descriptor high    
message-destination-name low    
message-driven-descriptor high    
method low    
method-intf low    
method-name low    
method-param low    
method-params low    
network-access-point high    
passivate-as-principal-name medium    
persistence     CMP
persistence-use     CMP
persistent-store-dir medium    
persistent-store-logical-name high    
pool medium    
principal-name low    
provider-url high    
read-timeout-seconds     CMP
remote-client-timeout medium    
remove-as-principal-name medium    
replication-type medium    
res-env-ref-name low    
res-ref-name low    
resource-description low    
resource-adapter-jndi-name low    
resource-description low    
resource-env-description low    
resource-link unknown    
retry-count medium    
retry-methods-on-rollback medium    
role-name low    
run-as-identity-principal low    
run-as-principal-name low    
run-as-role-assignment medium    
security-permission unknown    
security-permission-spec unknown    
security-role-assignment medium    
service-reference-description low    
session-timeout-seconds low    
stateful-session-cache low    
stateful-session-clustering high    
stateful-session-descriptor low    
stateless-bean-call-router-class-name high    
stateless-bean-is-clusterable high    
stateless-bean-load-algorithm high    
stateless-bean-methods-are-idempotent high    
stateless-clustering high    
stateless-session-descriptor low    
stick-to-first-server high    
timer-descriptor high    
timer-implementation high    
transaction-descriptor low    
transaction-isolation high    
transport-requirements medium    
trans-timeout-seconds low    
type-identifier     CMP
type-storage     CMP
type-version     CMP
use-serverside-stubs high    
use81-style-polling high    
weblogic-compatibility high    
weblogic-ejb-jar low    
weblogic-enterprise-bean low    
work-manager high    

CMP/Persistence

CMP (weblogic-rdbms-jar.xml) : Legacy feature, no work planned.

Persistence (persistence-configuration.xml): No work required.

Additional Note:

Weblogic does provide following two provider agnostic value add features for JPA development according to their doc. We do not have either of them available in v3.

  • Automatic persistence unit deployment based on variable name: Effort to implement in GlassFish - Medium
  • Support for vendor-specific subinterfaces when injecting an EntityManager from a particular persistence provider: Effort to implement in GlassFish - Medium

Webservices (weblogic-webservices.xml)

Element Name Effort Level(low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
<webservice-type> 
    (JAXRPC/JAXWS) 
</webservice-type>
low -
supported
Nominal support to label the Web Service as jax-rpc or jax-ws. We rely on @WebService to identify if it is JAX-WS WS, but WLS supports @WebService via JAX-RPC, we can't support this.
<wsdl-publish-file>
low wsdl-publish-location in sun-web.xml & wsdl-publish-location in sun-ejb-jar.xml supported
<service-endpoint-address> 
    <webservice-contextpath/> 
    <webservice-serviceuri/> 
</service-endpoint-address>
medium endpoint-address-uri in sun-ejb-jar.xml & sun-web.xml
supported
webservice-contextpath and webservice-serviceuri combined as endpoint-address-uri in sun-ejb-jar.xml endpoint-address-uri in sun-web.xml, don't know how to set webservice-contextpath, ours allows only relative to the contextpath.
<j2ee:login-config>
low login-config in sun-web.xml & sun-ejb-jar.xml supported
<j2ee:transport-guarantee>
low transport-guarantee in sun-web.xml & sun-ejb-jar.xml supported
<deployment-listener-list>
- -
unsupported/ignored
No idea, For WLS Internal use only
<wsdl>
   <exposed>(true/false)</exposed> 
</wsdl>
medium - supported
<transaction-timeout>
unknown cmt-timeout-in-seconds in sun-ejb-jar.xml (not part of Web Service config), How do we do for Servlet endpoints? unsupported/ignored
<callback-protocol> 
(http/https/jms) 
</callback-protocol>
high No Support for callbacks in Metro, Proposed as part of JAX-WS.Next work unsupported/ignored
<stream-attachments>
- JAX-WS defaults to Streaming attachments supported
<validate-request>
- - supported
<http-flush-response>
unknown -
unsupported/ignored
Seems to be configuration for ReliableMessagingFeature, need more info on this property behavior
<http-response-buffersize>
low -
supported
ReliableMessagingFeature.getDestinationBufferQuota(). Can be clubbed with ReliabilityConfig above to set the feature accordingly.
<reliability-config>
 <inactivity-timeout/>
 <base-retransmission-interval/>
 <retransmission-exponential-backoff/>
 <acknowledgement-interval/>
 <sequence-expiration/>
 <buffer-retry-count/>
 <buffer-retry-delay/>
 </reliability-config>
medium -
partial support,click for more info
Can be implemented via Metro API ReliableMessagingFeature. <inactivity-timeout> = ReliableMessagingFeature.getSequenceInactivityTimeout() <base-retransmission-interval> = ReliableMessagingFeature.getMessageRetransmissionInterval() retransmission-exponential-backoff= ReliableMessagingFeature.getRetransmissionBackoffAlgorithm() - enum values, one of them is "exponential" acknowledgement-interval = ReliableMessagingFeature.getAcknowledgementTransmissionInterval() sequence-expiration = ReliableMessagingFeature.getSequenceInactivityTimeout(); this is not exactly the same. In WLS this value means "regardless of activity". In Metro it applies only to inactive sequences. buffer-retry-count = ReliableMessagingFeature.getMaxMessageRetransmissionCount() buffer-retry-delay = ReliableMessagingFeature.getMessageRetransmissionInterval()
<webservice-security>
 <mbean-name>
 <webservice-security>
unknown unknown
unsupported/error
//TODO VB Kumar Jayanti (sun-web.xml, sun-ejb-jar.xml has some configuration for specifying Message Security).

Resource Adapter (weblogic-ra.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
~UWC_TOKEN_START~1278095715785~UWC_TOKEN_END| unknown NA GlassFish does not have per application based native library support.
<jndi-name
>
low NA jndi name for the resource-adapter bean which can be used by weblogic-ejb-jar.xml to map MDB configuration
<enable-access-outside-app
>
medium NA Possible with classloader changes. Embedded rar classloader is not managed by connector classloader.
<enable-global-access-to-classes
>
low NA Possible as there is already a global flag in
< connector-service
>. Need similar functionality per resource-adapter.
<work-manager
>
unknown/high NA Weblogic provides extensive features on work-management.
<security
>
medium NA Provision to specify multiple identities to perform various functions on RAR (RA lifecycle, connection-creation, work execution)
<properties
>
low NA  
<admin-objects
>
low-medium NA Ability to group admin-object so as to apply common configuration
<outbound-resource-adapter
>
<default-connection-properties
>
<logging
>
medium NA Ability to log ra specific usage in separate log files and various log file management facilities
<outbound-resource-adapter
>
<default-connection-properties
>
<transaction-support
>
low NA Ability to specify transaction-support at connection-definition level rather than RA level
<outbound-resource-adapter
>
<default-connection-properties
>
<authentication-mechanism
>
low NA Ability to specify auth-mechanism at connection-definition level rather than RA level
<outbound-resource-adapter
>
<default-connection-properties
>
<reauthentication-support
>
low NA Ability to specify reauth-support at connection-definition level rather than RA level
<outbound-resource-adapter
>
<default-connection-properties
>
<properties
>
low NA  
<outbound-resource-adapter
>
<default-connection-properties
>
<res-auth
>
low-medium NA  
<outbound-resource-adapter
>
<default-connection-properties
>
<pool-params
>
medium NA Refer connection-pool related support w.r.t XXX-jdbc.xml
<outbound-resource-adapter
>
<connection-definition-group
>
medium NA  
<outbound-resource-adapter
>
<connection-instance
>
medium NA  

Application Client (weblogic-application-client.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
env-entry low (none) simple property definitions based on the env-entry-name and env-entry-value
ejb-ref low ejb-ref ejb-ref-name and jndi-name subelements are identical
resource-ref low resource-ref both have subelements res-ref-name and jndi-name
resource-description low resource-ref?  
resource-env-description low resource-env-ref  
ejb-reference-description low ejb-ref?  
service-reference-description low service-ref  

Application (weblogic-application.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
ejb     Ignore, legacy (CMP)
xml medium   Ignore
jdbc-connection-pool     Ignore, deprecated
security low security-role-mapping Yes
application-param medium   Yes (but the web container does not support the particular params that could be specified through this element yet)
classloader-structure high   Ignore
listener medium   Ignore
singleton-service medium   Ignore
startup     Ignore, deprecated
shutdown     Ignore, deprecated
module medium   Yes (but the jms and jdbc do not support the module element that could be specified through this element yet)
library-ref medium   Ignore
fair-share-request high   Ignore, work manager related
response-time-request high   Ignore, work manager related
context-request high   Ignore, work manager related
max-threads-constraint high   Ignore, work manager related
min-threads-constraint high   Ignore, work manager related
capacity high   Ignore, work manager related
work-manager high   Ignore, work manager related
component-factory-class-name high   Ignore
application-admin-mode-trigger high   Ignore
session-descriptor     Ignore (see session-descriptor in weblogic.xml)
library-context-root-override medium   Ignore
prefer-application-packages high   Ignore, classloader structure related
prefer-application-resources high   Ignore, classloader structure related
fast-swap high   Ignore

JDBC Module (XXX-jdbc.xml)

Element Name Effort Level (low/medium/high/unknown) Glassfish Corresponding Element (if applicable) Comments  
initial-capacity low steady-pool-size  
max-capacity low max-pool-size  
capacity-increment low pool-resize-quantity GF attribute takes care of both scale up/down of pool
shrink-frequency-seconds low idle-timeout-in-seconds  
connection-creation-retry-frequency-seconds low connection-creation-retry-interval-in-seconds  
connection-reserve-timeout-seconds low max-wait-time  
test-frequency-seconds low idle-timeout-in-seconds Periodic validation is done in Weblogic
test-connections-on-reserve low is-connection-validation-required  
inactive-connection-timeout-seconds low Leak tracing + Leak reclaim put together  
test-table-name low validation-table-name The feature should be extended as a SQL query could be given (starting with string SQL), in which case a custom validator should be automatically created and validation_classname should be provided with this custom validator. Simple way is to extend support by parsing the query.
init-sql low init-sql a SQL string or just a table name can be provided here which can be parsed and "select count from tablename" can be done in GF.
statement-cache-size low statement-cache-size  
seconds-to-trust-an-idle-pool-connection low Support of validate-atmost-once can be extended. Seconds to return a connection from the pool before performing a connection validation.
statement-timeout low statement-timeout  
pinned-to-thread low associate-with-thread  
statement-cache-type medium None LRU already implemented in GF. FIXED type not yet implemented.
remove-infected-connections high None When true, physical connection is recreated everytime.
profile-type   None  
jdbc-xa-debug-level   None level of jdbc debugging for xa drivers
credential-mapping-enabled   None  
driver-interceptor   None  
identity-based-connection-pooling-enabled high None A feature similar to <security-map> in <connector-connection-pool> can be introduced
highest-num-waiters high None No. of requests that can block threads. More like Pool Wait Queue in GF that is configurable.
profile-harvest-frequency-seconds   None Harvesting profile data.
ignore-in-use-connections-enabled high Flush connection pool feature in GF may be extended Datasource shutdown even if connections in pool are in use.
login-delay-seconds   None Delay before each physical connection is created.

JMS Module (XXX-jms.xml)

Not supported in Glassfish 3.1. For an analysis of how Weblogic JMS descriptor files might be handled by Glassfish, see
here.

Deployment Plan (plan.xml)

Advanced feature. Will visit later.

WLDF Module (weblogic-diagnostics.xml)

Advanced feature. Will visit later.