GithubHelp home page GithubHelp logo

trashsydowdev / soa-client Goto Github PK

View Code? Open in Web Editor NEW

This project forked from coderockr/soa-client

0.0 2.0 0.0 115 KB

Aplicação usada como exemplo para usar o SOA-Server

PHP 82.11% JavaScript 9.17% HTML 6.37% Shell 2.35%

soa-client's Introduction

#Introdução

Essa é uma aplicação de modelo a ser usada como base para a criação de aplicativos baseados no Coderockr SOA-Server

##Estrutura dos diretórios

  • bin: diretório de executáveis do projeto, como o doctrine
  • configs
    • clients.php: identificação dos clientes que podem acessar os dados via REST/RPC
    • configs.php: configurações de conexão com banco de dados entre outras
  • library: diretórios da aplicação
    • model: entidades a serem acessadas via REST
    • service: serviços a serem acessadas via RPC
    • test: testes unitários das entidades e serviços
  • logs: logs de erros gerados pelo SOA-Server
  • vendor: diretório de dependências externas
  • vendor.sh: shell script que faz a instalação das dependências externas
  • bootstrap.php: configurações necessárias para a aplicação, como inicialização do Doctrine
  • phpunit.xml: arquivo usado pelo PHPUnit

#Instalação

  • Clonar o projeto
  • Executar o vendors.sh
  • Duplicar o arquivo configs/configs.php para configs/configs.development.php e fazer as alterações necessárias
  • Duplicar o arquivo configs/configs.php para configs/configs.testing.php e fazer as alterações necessárias
  • Dar permissão de escrita no diretório de logs, como o exemplo (assumindo que o usuário do Apache seja o www-data):
    chown -R www-data:www-data /vagrant/SOA-Client/logs
  • Criar os domínio virtuais do Apache para usar o SOA-Server, conforme o exemplo (alterando o ServerName, DocumentRoot e APPLICATION_PATH ):
<VirtualHost *:80>
   	    DocumentRoot "/vagrant/SOA-Server"
		ServerName soasample.dev
        SetEnv APPLICATION_ENV development
        SetEnv APPLICATION_PATH /vagrant/SOA-Client
        Header set Access-Control-Allow-Origin *

        <Directory "/vagrant/SOA-Server">
                Options Indexes Multiviews FollowSymLinks
                AllowOverride All
                Order allow,deny
                Allow from all

                <Limit GET HEAD POST PUT DELETE OPTIONS>
                        Order Allow,Deny
                        Allow from all
                </Limit>

                RewriteEngine On
                RewriteCond %{REQUEST_FILENAME} !-f
                RewriteRule !\.(js|ico|gif|jpg|png|css|htm|html|txt|mp3)$ index.php
                RewriteRule .? - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        </Directory>
</VirtualHost>

<VirtualHost *:80>
        DocumentRoot "/vagrant/SOA-Server"
        ServerName soasampletest.dev
        SetEnv APPLICATION_ENV testing
        SetEnv APPLICATION_PATH /vagrant/SOA-Client
        Header set Access-Control-Allow-Origin *

        <Directory "/vagrant/SOA-Server">
                Options Indexes Multiviews FollowSymLinks
                AllowOverride All
                Order allow,deny
                Allow from all

                <Limit GET HEAD POST PUT DELETE OPTIONS>
                        Order Allow,Deny
                        Allow from all
                </Limit>

                RewriteEngine On
                RewriteCond %{REQUEST_FILENAME} !-f
                RewriteRule !\.(js|ico|gif|jpg|png|css|htm|html|txt|mp3)$ index.php
                RewriteRule .? - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        </Directory>
</VirtualHost>
  • Configurar o /etc/hosts

    127.0.0.1 soasample.dev
    127.0.0.1 soasampletest.dev

Geração das tabelas

Para que o Doctrine gere as tabelas no banco de dados baseado nas entidades:

APPLICATION_ENV=development php ./bin/doctrine.php orm:schema-tool:create
APPLICATION_ENV=testing php ./bin/doctrine.php orm:schema-tool:create

Desta forma são criadas as tabelas na base de desenvolvimento e na de testes

soa-client's People

Contributors

eminetto avatar

Watchers

James Cloos avatar sydowDev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.