Один из возможных подходов заключается в том, чтобы ваш контроллер CodeIgniter получал контент за сценой через file_get_contents или, возможно, phpcurl.
Фрагмент внутри CI-контроллера:
//-- snippet --
... other controller boilerplate ...
$data = array();
$tomcat_content = @file_get_contents('http://mytomcat.server.url/page.jsp');
$data['tomcat_content'] = $tomcat_content;
$this->load->view('relevant_view', $data);
//-- snippet --
Фрагмент из related_view.php:
<!-- snippet -->
<div class="tomcat-content">
<?php echo (empty($tomcat_content))? 'Missing Content' : $tomcat_content;?>
</div>
<!-- snippet -->
Некоторые замечания, которые следует учитывать:
(1)существует ли какая-либо безопасность на исходных страницах сервера приложений Tomcat (обычная аутентификация или явная страница входа)?
(2) Есть ли какие-либо проблемы с прокси-сервером или аналогичные проблемы с доступом к серверу приложений Tomcat?Рассматриваемый PHP настроен для извлечения из внешних источников и / или был ли он скомпилирован с возможностями cURL?
(4) Задержка со стороны Tomcat повлияет на сторону CodeIgniter.Некоторое из этого можно уменьшить с помощью кэширования выходного класса из CodeIgniter, если исходный контент относительно статичен.
Если страниц много, код извлечения внешнего контента может быть выделен в пользовательскую библиотеку CodeIgniter илипомощник, а затем загружается.