[ 
https://issues.apache.org/jira/browse/AXIS2-4903?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13575990#comment-13575990
 ] 

Constantino Cronemberger commented on AXIS2-4903:
-------------------------------------------------

Hi,

I managed to get it working by adding all modules and services to the 
corresponding list files:

WEB-INF/modules/modules.list
WEB-INF/services/services.list

I have tested is by setting unpackWAR="false" in the context.xml inside the WAR 
that was stored on webapps directory with Tomcat 7.0.27.

Regards,
   Constantino
                
> ScriptModule logs the error "AxisConfiguration getRepository returns null, 
> cannot deploy scripts"
> -------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-4903
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4903
>             Project: Axis2
>          Issue Type: Bug
>          Components: deployment
>    Affects Versions: 1.4.1, 1.5, 1.5.1, 1.5.2, 1.5.3, nightly
>         Environment: Debian 5.0.7, Tomcat 5.5.26
>            Reporter: Zsolt Müller
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> Conditions for the error to occur:
> - use of the scripting module (ie. add "axis2-scripting-*.mar" to your 
> modules/modules.list)
> - use of the "axis2.xml.url" web.xml parameter or packaging of the webapp 
> into a WAR/EAR
> The problem is that during the initialization of the scripting module (ie. 
> the call to org.apache.axis2.scripting.ScriptModule.init()) it checks for the 
> repository in the axisconfiguration to be not null.
> The relevant code is:
>   AxisConfiguration axisConfig = configContext.getAxisConfiguration();
>   if (axisConfig.getRepository() == null) {
>     log.error("AxisConfiguration getRepository returns null, cannot deploy 
> scripts");
>   } else {
>     ... // scripting module initialization
>   }
> If ConfigurationContext.getAxisConfiguration().getRepository() returns null, 
> then the scripting module logs an error and the module is not initialized.
> Now the problem causing this to happen is in 
> org.apache.axis2.deployment.DeploymentEngine.loadRepositoryFromURL().
> The exact callstack will look like this (without line numbers, because I 
> don't want to get version-specific):
>   - DeploymentEngine.loadRepositoryFromURL(URL repoURL)
>   - WarBasedAxisConfigurator.getAxisConfiguration()
>   - ConfigurationContextFactory.createConfigurationContext(AxisConfigurator 
> axisConfigurator)
>   - AxisServlet.initConfigContext(ServletConfig config)
>   - AxisServlet.init(ServletConfig config)
> If you take a look at WarBasedAxisConfigurator.getAxisConfiguration(), you'll 
> see that depeding on the configuration it executes one of the following to 
> load the repository:
>   - DeploymentEngine.loadRepository(String repoDir)
>   - DeploymentEngine.loadRepositoryFromURL(URL repoURL)
>   - DeploymentEngine.loadFromClassPath()
> In case of loadRepository(String repoDir) there's a call to 
> "axisConfig.setRepository(axisRepo.toURL())" which sets the repository 
> reference in the axis configuration.
> In case of loadRepositoryFromURL(URL repoURL) there's no such call, which 
> results in ScriptModule.init() in the error message I described earlier.
> The fix is easy: in 
> org.apache.axis2.deployment.DeploymentEngine.loadRepositoryFromURL(URL 
> repoURL) put a axisConfig.setRepository(repoURL) call before the 
> axisConfig.validateSystemPredefinedPhases() call.
> As for DeploymentEngine.loadFromClassPath(), I don't know how to set the 
> repository URL.
> Any idea? Or any other way to use the scripting module without an axis2.xml?
> My guess is that ScriptModule should be modified to handle the case, when 
> repository is loaded from CLASSPATH. Ie. it should try to pick up the 
> scriptServicesDirectory from the CLASSPATH as well.
> Currently it's hard-coded to look for the scriptServicesDirectory within a 
> filesystem entry pointed to by a File object.
> P.S.: this bug is present in v1.4.1, v1.5.3 and in SVN trunk (at the moment 
> of writing). I guess this has been around from the beginning.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org
For additional commands, e-mail: java-dev-h...@axis.apache.org

Reply via email to