You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Oleg Kalnichevski (JIRA)" <ji...@apache.org> on 2008/07/11 15:10:31 UTC

[jira] Commented: (SYNAPSE-396) Consider reducing requisite dependencies of Synapse Core

    [ https://issues.apache.org/jira/browse/SYNAPSE-396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12612868#action_12612868 ] 

Oleg Kalnichevski commented on SYNAPSE-396:
-------------------------------------------

Below is the present list of dependencies for Synapse Core.

(1) Why on earth does Synapse Core need to be directly dependent Spring? I am a major fan of Spring framework, but does it make any sense to have a hard dependency on a complex DI framework because of just two utility classes?

(2) Does Synapse Core really need to be directly dependent on Log4j? Yes, it is a great toolkit, but many managed runtimes come with different logging toolkits. Having Log4j on the classpath, for instance, will certainly impact the default behaviour of Commons Logging. It is really desired?

(3) Most importantly, does Core really need to be dependent on ALL transports including fairly exotic ones? Should Core be dependent on specific transport implementation(s) at all. I personally think not.

Please do consider reducing requisite dependencies of Synapse Core in order to facilitate its re-usability and embeddability.

Besides, there are enough companies paranoid to such an extent that they impose a policy of requiring an explicit approval of each individual external dependency for mission critical systems. Coincidentally, those companies are usually quite good to have as paying customers.

Oleg

----

[INFO] [dependency:resolve]
[INFO]
[INFO] The following files have been resolved:
[INFO]    JLex:JLex:jar:0.0
[INFO]    annogen:annogen:jar:0.1.0
[INFO]    axis:axis-ant:jar:1.4
[INFO]    backport-util-concurrent:backport-util-concurrent:jar:3.1
[INFO]    bouncycastle:bcprov-jdk15:jar:132
[INFO]    com.jcraft:jsch:jar:0.1.31
[INFO]    commons-cli:commons-cli:jar:1.0
[INFO]    commons-codec:commons-codec:jar:1.3
[INFO]    commons-collections:commons-collections:jar:3.1
[INFO]    commons-dbcp:commons-dbcp:jar:1.2.2
[INFO]    commons-discovery:commons-discovery:jar:0.2
[INFO]    commons-fileupload:commons-fileupload:jar:1.2
[INFO]    commons-httpclient:commons-httpclient:jar:3.1
[INFO]    commons-io:commons-io:jar:1.4
[INFO]    commons-lang:commons-lang:jar:2.3
[INFO]    commons-logging:commons-logging:jar:1.1
[INFO]    commons-net:commons-net:jar:1.4.1
[INFO]    commons-pool:commons-pool:jar:1.3
[INFO]    de.schlichtherle.io:truezip:jar:6.6
[INFO]    groovy:groovy-all:jar:1.0
[INFO]    jakarta-regexp:jakarta-regexp:jar:1.4
[INFO]    java-cup:java-cup:jar:0.0
[INFO]    javax.activation:activation:jar:1.1
[INFO]    javax.mail:mail:jar:1.4
[INFO]    javax.servlet:servlet-api:jar:2.3
[INFO]    jaxen:jaxen:jar:1.1.1
[INFO]    junit:junit:jar:3.8.2
[INFO]    log4j:log4j:jar:1.2.13
[INFO]    net.sf.saxon:saxon:jar:8.9
[INFO]    net.sf.saxon:saxon-dom:jar:8.9
[INFO]    net.sf.saxon:saxon-xqj:jar:8.9
[INFO]    opensaml:opensaml:jar:1.1
[INFO]    org.apache.ant:ant:jar:1.7.0
[INFO]    org.apache.ant:ant-launcher:jar:1.7.0
[INFO]    org.apache.ant:ant-nodeps:jar:1.7.0
[INFO]    org.apache.axis2:addressing:mar:20080625.173656-377
[INFO]    org.apache.axis2:axis2-adb:jar:20080625.173656-380
[INFO]    org.apache.axis2:axis2-adb-codegen:jar:20080625.173656-380
[INFO]    org.apache.axis2:axis2-clustering:jar:20080612.231257-317
[INFO]    org.apache.axis2:axis2-codegen:jar:20080625.173656-380
[INFO]    org.apache.axis2:axis2-java2wsdl:jar:20080625.173656-378
[INFO]    org.apache.axis2:axis2-kernel:jar:20080625.173656-381
[INFO]    org.apache.axis2:axis2-mtompolicy:jar:20080612.231257-318
[INFO]    org.apache.axis2:axis2-saaj:jar:20080625.173656-374
[INFO]    org.apache.axis2:axis2-transports:jar:20080625.173656-5
[INFO]    org.apache.axis2:axis2-xmlbeans:jar:20080612.231257-317
[INFO]    org.apache.axis2:mex:jar:impl:20080612.231257-253
[INFO]    org.apache.bcel:bcel:jar:5.2
[INFO]    org.apache.bsf:bsf-all:jar:3.0-beta2
[INFO]    org.apache.commons:commons-vfs:jar:1.1-587797
[INFO]    org.apache.derby:derby:jar:10.1.1.0
[INFO]    org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar:1.1
[INFO]    org.apache.geronimo.specs:geronimo-saaj_1.3_spec:jar:1.0.0
[INFO]    org.apache.geronimo.specs:geronimo-stax-api_1.0_spec:jar:1.0.1
[INFO]    org.apache.geronimo.specs:geronimo-ws-metadata_2.0_spec:jar:1.1.2
[INFO]    org.apache.httpcomponents:httpcore:jar:4.0-beta1
[INFO]    org.apache.httpcomponents:httpcore-nio:jar:4.0-beta1
[INFO]    org.apache.mina:mina-core:jar:1.1.0
[INFO]    org.apache.mina:mina-filter-ssl:jar:1.0.0
[INFO]    org.apache.neethi:neethi:jar:2.0.4
[INFO]    org.apache.qpid:qpid-client:jar:1.0-incubating-M3-615355
[INFO]    org.apache.qpid:qpid-common:jar:1.0-incubating-M3-615355
[INFO]    org.apache.rampart:rampart:mar:20080424.184741-413
[INFO]    org.apache.rampart:rampart-core:jar:20080424.184741-457
[INFO]    org.apache.rampart:rampart-policy:jar:20080424.184741-467
[INFO]    org.apache.rampart:rampart-trust:jar:20080424.184741-460
[INFO]    org.apache.santuario:xmlsec:jar:1.4.0
[INFO]    org.apache.synapse:synapse-transports:jar:1.3-SNAPSHOT
[INFO]    org.apache.tomcat:juli:jar:6.0.16
[INFO]    org.apache.tomcat:tribes:jar:6.0.16
[INFO]    org.apache.woden:woden-api:jar:1.0-SNAPSHOT
[INFO]    org.apache.woden:woden-impl-dom:jar:1.0-SNAPSHOT
[INFO]    org.apache.ws.commons.axiom:axiom-api:jar:20080612.230219-92
[INFO]    org.apache.ws.commons.axiom:axiom-dom:jar:20080612.230219-91
[INFO]    org.apache.ws.commons.axiom:axiom-impl:jar:20080612.230219-92
[INFO]    org.apache.ws.commons.schema:XmlSchema:jar:1.4.2
[INFO]    org.apache.ws.security:wss4j:jar:1.5.4
[INFO]    org.codehaus.woodstox:wstx-asl:jar:3.2.4
[INFO]    org.igniterealtime:smack:jar:3.0.4
[INFO]    org.igniterealtime:smackx:jar:3.0.4
[INFO]    org.opensymphony:quartz:jar:1.6.0
[INFO]    org.slf4j:slf4j-api:jar:1.3.0
[INFO]    org.slf4j:slf4j-jdk14:jar:1.3.0
[INFO]    org.springframework:spring-aop:jar:1.2.8
[INFO]    org.springframework:spring-beans:jar:1.2.8
[INFO]    org.springframework:spring-context:jar:1.2.8
[INFO]    org.springframework:spring-core:jar:1.2.8
[INFO]    org.springframework.ws:spring-xml:jar:1.5.2
[INFO]    org.wso2.caching:wso2caching-core:jar:1.6.1
[INFO]    org.wso2.mercury:mercury-core:jar:0.91
[INFO]    org.wso2.mercury:mercury-mar:mar:0.91
[INFO]    org.wso2.throttle:wso2throttle-core:jar:1.6
[INFO]    oro:oro:jar:2.0.8
[INFO]    quickfixj:quickfixj-core:jar:1.3.1
[INFO]    quickfixj:quickfixj-msg-fix40:jar:1.3.1
[INFO]    quickfixj:quickfixj-msg-fix41:jar:1.3.1
[INFO]    quickfixj:quickfixj-msg-fix42:jar:1.3.1
[INFO]    quickfixj:quickfixj-msg-fix43:jar:1.3.1
[INFO]    quickfixj:quickfixj-msg-fix44:jar:1.3.1
[INFO]    rhino:js:jar:1.6R5
[INFO]    stax:stax-api:jar:1.0.1
[INFO]    wrapper:wrapper:jar:3.2.3
[INFO]    wsdl4j:wsdl4j:jar:1.6.2
[INFO]    xalan:xalan:jar:2.7.0
[INFO]    xerces:xercesImpl:jar:2.8.1
[INFO]    xerces:xmlParserAPIs:jar:2.6.0
[INFO]    xml-apis:xml-apis:jar:1.3.04
[INFO]    xmlbeans:xbean:jar:2.2.0
[INFO]    xmlunit:xmlunit:jar:1.1
[INFO]
[INFO]

> Consider reducing requisite dependencies of Synapse Core
> --------------------------------------------------------
>
>                 Key: SYNAPSE-396
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-396
>             Project: Synapse
>          Issue Type: Wish
>          Components: Core
>    Affects Versions: 1.3
>            Reporter: Oleg Kalnichevski
>
> Folks
> I understand that the greatest majority of Synapse users use it as a standalone application and are unlikely  to care much about external dependencies of individual modules. However, as the Synapse user base grows it will become more diverse as well. There will be users who may want to (or have to) use parts of Synapse embedded into a larger runtime either as OSGi bundles, GBeans or a set of plain old jars. They are also likely to concerned about total number of external dependencies in order to minimize possibility of versioning conflicts. 
> The present situation with external dependencies can only be described as depressing. Synapse Core is currently dependent either directly or transitively on several dozens of libraries, which makes it very difficult to embed. 
> More details to follow

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org